X-Git-Url: https://git.openpandora.org/cgi-bin/gitweb.cgi?p=pandora-kernel.git;a=blobdiff_plain;f=drivers%2Fleds%2Fleds.h;h=2dd8ecbfdc3155250d3608897db8d1d0047fc317;hp=f2f3884fe06314b01a3bb647821c6b4e0ea88e89;hb=44d84afa834b799560d7dbe47250ad7557f5ca2f;hpb=e6f194d8f6f50da6837af637b2fd839c34185f7a diff --git a/drivers/leds/leds.h b/drivers/leds/leds.h index f2f3884fe063..2dd8ecbfdc31 100644 --- a/drivers/leds/leds.h +++ b/drivers/leds/leds.h @@ -14,28 +14,36 @@ #define __LEDS_H_INCLUDED #include +#include #include static inline void led_set_brightness(struct led_classdev *led_cdev, enum led_brightness value) { - if (value > LED_FULL) - value = LED_FULL; + if (value > led_cdev->max_brightness) + value = led_cdev->max_brightness; led_cdev->brightness = value; if (!(led_cdev->flags & LED_SUSPENDED)) led_cdev->brightness_set(led_cdev, value); } -extern rwlock_t leds_list_lock; +static inline int led_get_brightness(struct led_classdev *led_cdev) +{ + return led_cdev->brightness; +} + +extern struct rw_semaphore leds_list_lock; extern struct list_head leds_list; #ifdef CONFIG_LEDS_TRIGGERS void led_trigger_set_default(struct led_classdev *led_cdev); void led_trigger_set(struct led_classdev *led_cdev, struct led_trigger *trigger); +void led_trigger_remove(struct led_classdev *led_cdev); #else -#define led_trigger_set_default(x) do {} while(0) -#define led_trigger_set(x, y) do {} while(0) +#define led_trigger_set_default(x) do {} while (0) +#define led_trigger_set(x, y) do {} while (0) +#define led_trigger_remove(x) do {} while (0) #endif ssize_t led_trigger_store(struct device *dev, struct device_attribute *attr,