diff options
author | Henrique de Moraes Holschuh <hmh@hmh.eng.br> | 2008-03-18 05:47:48 -0400 |
---|---|---|
committer | Richard Purdie <rpurdie@rpsys.net> | 2008-04-24 18:37:42 -0400 |
commit | 29d76dfa29fe22583aefddccda0bc56aa81035dc (patch) | |
tree | fbae9207af63cb270b715a29ee7dc053d7b8a037 /include/linux/leds.h | |
parent | ca3259b3603539e72faacc6821050ee889a52103 (diff) |
leds: Add support to leds with readable status
Some led hardware allows drivers to query the led state, and this patch
adds a hook to let the led class take advantage of that information when
available.
Without this functionality, when access to the led hardware is not
exclusive (i.e. firmware or hardware might change its state behind the
kernel's back), reality goes out of sync with the led class' idea of what
the led is doing, which is annoying at best.
Behaviour for drivers that do not or cannot read the led status is
unchanged.
Signed-off-by: Henrique de Moraes Holschuh <hmh@hmh.eng.br>
Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
Diffstat (limited to 'include/linux/leds.h')
-rw-r--r-- | include/linux/leds.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/include/linux/leds.h b/include/linux/leds.h index c195a674b6ca..ff1570f97045 100644 --- a/include/linux/leds.h +++ b/include/linux/leds.h | |||
@@ -37,6 +37,8 @@ struct led_classdev { | |||
37 | /* Set LED brightness level */ | 37 | /* Set LED brightness level */ |
38 | void (*brightness_set)(struct led_classdev *led_cdev, | 38 | void (*brightness_set)(struct led_classdev *led_cdev, |
39 | enum led_brightness brightness); | 39 | enum led_brightness brightness); |
40 | /* Get LED brightness level */ | ||
41 | enum led_brightness (*brightness_get)(struct led_classdev *led_cdev); | ||
40 | 42 | ||
41 | /* Activate hardware accelerated blink */ | 43 | /* Activate hardware accelerated blink */ |
42 | int (*blink_set)(struct led_classdev *led_cdev, | 44 | int (*blink_set)(struct led_classdev *led_cdev, |