include/linux/leds.h
changeset 2 d1f6d8b6f81c
parent 0 aa628870c1d3
equal deleted inserted replaced
1:0056487c491e 2:d1f6d8b6f81c
    30 struct led_classdev {
    30 struct led_classdev {
    31 	const char		*name;
    31 	const char		*name;
    32 	int			 brightness;
    32 	int			 brightness;
    33 	int			 flags;
    33 	int			 flags;
    34 
    34 
       
    35 	/* Lower 16 bits reflect status */
    35 #define LED_SUSPENDED		(1 << 0)
    36 #define LED_SUSPENDED		(1 << 0)
       
    37 	/* Upper 16 bits reflect control information */
       
    38 #define LED_CORE_SUSPENDRESUME	(1 << 16)
    36 
    39 
    37 	/* Set LED brightness level */
    40 	/* Set LED brightness level */
    38 	/* Must not sleep, use a workqueue if needed */
    41 	/* Must not sleep, use a workqueue if needed */
    39 	void		(*brightness_set)(struct led_classdev *led_cdev,
    42 	void		(*brightness_set)(struct led_classdev *led_cdev,
    40 					  enum led_brightness brightness);
    43 					  enum led_brightness brightness);
    60 #endif
    63 #endif
    61 };
    64 };
    62 
    65 
    63 extern int led_classdev_register(struct device *parent,
    66 extern int led_classdev_register(struct device *parent,
    64 				 struct led_classdev *led_cdev);
    67 				 struct led_classdev *led_cdev);
    65 extern void led_classdev_unregister(struct led_classdev *lcd);
    68 extern void led_classdev_unregister(struct led_classdev *led_cdev);
    66 extern void led_classdev_suspend(struct led_classdev *led_cdev);
    69 extern void led_classdev_suspend(struct led_classdev *led_cdev);
    67 extern void led_classdev_resume(struct led_classdev *led_cdev);
    70 extern void led_classdev_resume(struct led_classdev *led_cdev);
    68 
    71 
    69 /*
    72 /*
    70  * LED Triggers
    73  * LED Triggers