diff options
author | Christian Marangi <ansuelsmth@gmail.com> | 2024-06-12 01:14:18 +0200 |
---|---|---|
committer | Tom Rini <trini@konsulko.com> | 2024-06-18 16:59:46 -0600 |
commit | 043deee365373f2cac422c12266667b96ef42a4f (patch) | |
tree | b002e4b591b558f8b05d56bb0f3f5dabc911d1fc | |
parent | b869e4c66a434c1aafb351abedcd678daef70966 (diff) | |
download | u-boot-043deee365373f2cac422c12266667b96ef42a4f.tar.gz |
led: status_led: add function to toggle a status LED
Add function to toggle a status LED by using the status LED ID reference
configs.
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
-rw-r--r-- | drivers/misc/status_led.c | 28 | ||||
-rw-r--r-- | include/status_led.h | 1 |
2 files changed, 24 insertions, 5 deletions
diff --git a/drivers/misc/status_led.c b/drivers/misc/status_led.c index a6e9c03a02e..93bfb410662 100644 --- a/drivers/misc/status_led.c +++ b/drivers/misc/status_led.c @@ -103,17 +103,24 @@ void status_led_tick(ulong timestamp) } } -void status_led_set(int led, int state) +static led_dev_t *status_get_led_dev(int led) { - led_dev_t *ld; - if (led < 0 || led >= MAX_LED_DEV) - return; + return NULL; if (!status_led_init_done) status_led_init(); - ld = &led_dev[led]; + return &led_dev[led]; +} + +void status_led_set(int led, int state) +{ + led_dev_t *ld; + + ld = status_get_led_dev(led); + if (!ld) + return; ld->state = state; if (state == CONFIG_LED_STATUS_BLINKING) { @@ -122,3 +129,14 @@ void status_led_set(int led, int state) } __led_set (ld->mask, state); } + +void status_led_toggle(int led) +{ + led_dev_t *ld; + + ld = status_get_led_dev(led); + if (!ld) + return; + + __led_toggle(ld->mask); +} diff --git a/include/status_led.h b/include/status_led.h index 5ce4522b029..fe0c84fb4b4 100644 --- a/include/status_led.h +++ b/include/status_led.h @@ -38,6 +38,7 @@ void status_led_init(void); void status_led_tick(unsigned long timestamp); void status_led_set(int led, int state); +void status_led_toggle(int led); /***** MVS v1 **********************************************************/ #if (defined(CONFIG_MVS) && CONFIG_MVS < 2) |