/var/log/messages

debugging with sixth sense

Struct Kobject 型

あまりにアレなので ldd3 なコンテンツ見つつ struct kobject の確認をしてみた。とりあえず Chapter 14. The Linux Device Model というあたり。

ざっくりな理解を以下に列挙してみます。

  • kobject は device model を互いに保持する基本的な構造
  • 階層的な関係を持っていて parent 属性で親の kobject を取得できる
  • parent な kobject にぶら下がっている kobject を列挙できる kset という属性がある
  • kobject_add したら sysfs にその kobject なエントリができる、とあるな
  • ktype という struct kobj_type 型の属性が sysfs 関連の情報を管理しているのかどうか
  • struct kernfs_node 型の sd という属性が若干謎
  • reference count の操作は kobject_get および kobject_put を使う

以下な pdf を発見。確認してみます。

ドライバ関連で実機確認

/proc/devices には gpio なデバイスは見当たらない。おそらく、なんですが /dev 配下にはファイルを作っていないのではないかな。別途ソース落として中身確認してみたいと思っています。ちなみに messages には

bcm2708_gpio: bcm2708_gpio_probe c05cfed0

というログが出力されていることを確認しています。

Comments