LED: make triggers track their state
[pandora-kernel.git] / include / linux / leds.h
index 519df72..8a4e0b3 100644 (file)
@@ -48,7 +48,7 @@ struct led_classdev {
 
        struct device           *dev;
        struct list_head         node;                  /* LED Device list */
-       char                    *default_trigger;       /* Trigger to use */
+       const char              *default_trigger;       /* Trigger to use */
 
 #ifdef CONFIG_LEDS_TRIGGERS
        /* Protects the trigger data below */
@@ -85,6 +85,8 @@ struct led_trigger {
 
        /* Link to next registered trigger */
        struct list_head  next_trig;
+
+       enum led_brightness prev_brightness;
 };
 
 /* Registration functions for complex triggers */
@@ -118,6 +120,20 @@ extern void ledtrig_ide_activity(void);
 #define ledtrig_ide_activity() do {} while(0)
 #endif
 
+/*
+ * Generic LED platform data for describing LED names and default triggers.
+ */
+struct led_info {
+       const char      *name;
+       char            *default_trigger;
+       int             flags;
+};
+
+struct led_platform_data {
+       int             num_leds;
+       struct led_info *leds;
+};
+
 /* For the leds-gpio driver */
 struct gpio_led {
        const char *name;