diff mbox

[U-Boot,PATCH23/23] Cmd: LED: make DM-leds toggle

Message ID 20160618125722.11351.2664.stgit@obelix.dresden.micronet24.de
State Superseded
Headers show

Commit Message

Benjamin Tietz June 18, 2016, 12:57 p.m. UTC
From: Benjamin Tietz <benjamin@micronet24.de>


---
 cmd/led.c |   10 ++++++++++
 1 file changed, 10 insertions(+)
From: Benjamin Tietz <benjamin@micronet24.de>


---
 cmd/led.c |   10 ++++++++++
 1 file changed, 10 insertions(+)
diff mbox

Patch

diff --git a/cmd/led.c b/cmd/led.c
index 99358c6..3728d30 100644
--- a/cmd/led.c
+++ b/cmd/led.c
@@ -195,11 +195,21 @@  static void _led_dm_onoff(const led_tbl_t *led, enum led_cmd cmd, char *arg)
 		led_set_on(dev, cmd == LED_ON);
 }
 
+static void _led_dm_toggle(const led_tbl_t *led, enum led_cmd cmd, char *arg)
+{
+	struct udevice *dev = NULL;
+	if(led_get_by_label(led->string, &dev))
+		return;
+	if(dev)
+		led_toggle(dev);
+}
+
 // this isn't const, as the string will be replaced by the current led's label, always.
 static led_tbl_t _led_dm = {
 	.op = {
 		[LED_ON] = _led_dm_onoff,
 		[LED_OFF] = _led_dm_onoff,
+		[LED_TOGGLE] = _led_dm_toggle,
 		[LED_LIST] = _led_list_name,
 	},
 };