diff options
author | Sascha Hauer <s.hauer@pengutronix.de> | 2010-12-18 14:34:14 +0100 |
---|---|---|
committer | Sascha Hauer <s.hauer@pengutronix.de> | 2010-12-20 09:28:21 +0100 |
commit | 51271530d2f824ee9e1ef01a2eb7f361622716aa (patch) | |
tree | 5f2bdd94e67322c5fdfe3828a5850b2c54f4fa28 /include/led.h | |
parent | 0277a663bcbebe5be82dc88235fcd0a1465bd5e8 (diff) | |
download | barebox-51271530d2f824ee9e1ef01a2eb7f361622716aa.tar.gz barebox-51271530d2f824ee9e1ef01a2eb7f361622716aa.tar.xz |
basic LED support
This patch adds core functionality for controlling LEDs.
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'include/led.h')
-rw-r--r-- | include/led.h | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/include/led.h b/include/led.h new file mode 100644 index 0000000000..3e7b1d98b3 --- /dev/null +++ b/include/led.h @@ -0,0 +1,27 @@ +#ifndef __LED_H +#define __LED_H + +struct led { + void (*set)(struct led *, unsigned int value); + int max_value; + char *name; + int num; + struct list_head list; +}; + +struct led *led_by_number(int no); +struct led *led_by_name(const char *name); +struct led *led_by_name_or_number(const char *str); + +static inline int led_get_number(struct led *led) +{ + return led->num; +} + +int led_set_num(int num, unsigned int value); +int led_set(struct led *led, unsigned int value); +int led_register(struct led *led); +void led_unregister(struct led *led); +void led_unregister(struct led *led); + +#endif /* __LED_H */ |