diff options
author | Sascha Hauer <s.hauer@pengutronix.de> | 2010-12-18 14:37:39 +0100 |
---|---|---|
committer | Sascha Hauer <s.hauer@pengutronix.de> | 2010-12-20 09:57:35 +0100 |
commit | 32558d1ae5ae15a8e417e9640daf0b7e2e01964f (patch) | |
tree | c9cfde824ac862292ff44aaf9fd830d0014c11fe /include | |
parent | 91d781f51df5d4de23d09a6777bfc968a0a7ca68 (diff) | |
download | barebox-32558d1ae5ae15a8e417e9640daf0b7e2e01964f.tar.gz barebox-32558d1ae5ae15a8e417e9640daf0b7e2e01964f.tar.xz |
LED: Add LED trigger support
This patch allows to associate LEDs with certain triggers, such
as heartbeat or network activity.
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'include')
-rw-r--r-- | include/led.h | 32 | ||||
-rw-r--r-- | include/net.h | 3 |
2 files changed, 35 insertions, 0 deletions
diff --git a/include/led.h b/include/led.h index 0210897ff2..9ec1f0d37b 100644 --- a/include/led.h +++ b/include/led.h @@ -26,6 +26,38 @@ int led_register(struct led *led); void led_unregister(struct led *led); void led_unregister(struct led *led); +/* LED trigger support */ +enum led_trigger { + LED_TRIGGER_PANIC, + LED_TRIGGER_HEARTBEAT, + LED_TRIGGER_NET_RX, + LED_TRIGGER_NET_TX, + LED_TRIGGER_NET_TXRX, + LED_TRIGGER_MAX, +}; + +enum trigger_type { + TRIGGER_ENABLE, + TRIGGER_DISABLE, + TRIGGER_FLASH, +}; + +#ifdef CONFIG_LED_TRIGGERS +int led_set_trigger(enum led_trigger trigger, struct led *led); +void led_trigger(enum led_trigger trigger, enum trigger_type); +#else +static inline int led_set_trigger(enum led_trigger trigger, struct led *led) +{ + return 0; +} + +static inline void led_trigger(enum led_trigger trigger, enum trigger_type type) +{ +} +#endif + +int led_get_trigger(enum led_trigger trigger); + /* gpio LED support */ struct gpio_led { int gpio; diff --git a/include/net.h b/include/net.h index c695e5f72a..ccaab8b35f 100644 --- a/include/net.h +++ b/include/net.h @@ -18,6 +18,7 @@ #include <malloc.h> #include <stdlib.h> #include <clock.h> +#include <led.h> #include <asm/byteorder.h> /* for nton* / ntoh* stuff */ @@ -417,4 +418,6 @@ static inline unsigned char *net_udp_get_payload(struct net_connection *con) int net_udp_send(struct net_connection *con, int len); int net_icmp_send(struct net_connection *con, int len); +void led_trigger_network(enum led_trigger trigger); + #endif /* __NET_H__ */ |