[Armadillo:03030] Re: Armadillo-500 sysfs経由のa500用のデバイスドライバ制御について
g-kihara
email@hidden
2008年 6月 19日 (木) 16:47:37 JST
>
> 「sysfs store() が led_set_brightness() を呼ぶための登録
> はどこで行われているのか」を調べているのですが
>
> led_brightness_store( )が呼ばれたときにこの関数内で,
> led_set_brightness(led_cdev, state);のような形でよばれていました。
> さらに、led_brightness_store( )は、
> static DEVICE_ATTR(brightness,
> 0644,led_brightness_show,led_brightness_store);
> により、sysfs経由で書き込み要求があった場合、
> led_brightness_store( )が呼ばれるという具合に理解すればよろしいのでしょうか?
さきほどSHOJIさんから頂いた回答により、
sysfs経由によるデバイスドライバ制御の流れが理解できました。
ご多忙の中、ご教示頂きどうもありがとうございました。
-----------------------------------------
echo $2 > /sys/calss/leds/$1/$3
-> sysfs経由でwrite要求が行われる
-> sysfs_write_file
-> flush_write_buffer()
-> sysfs store()
ここで、
static DEVICE_ATTR(brightness,
0644,
led_brightness_show,
led_brightness_store);
と定義されているので、
store要求(書き込み要求)があった場合、
led_brightness_store( )が呼ばれる。
-> led_set_brightness()
-> armadillo5x0_led_set()
-----------------------------------------
以上
armadillo メーリングリストの案内