summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFurquan Shaikh <furquan@chromium.org>2017-06-09 11:36:50 -0700
committerchrome-bot <chrome-bot@chromium.org>2017-06-15 04:39:31 -0700
commitc860bc15c5a2250956dcedb5d8bdf76378b7fe7d (patch)
tree041ba1e019eeb62e23d33138edc419a5258e2f4b
parent5ed0e0f76fda2042236b59de594f8e2cf4e332f2 (diff)
downloadchrome-ec-c860bc15c5a2250956dcedb5d8bdf76378b7fe7d.tar.gz
poppy: Add LED support for sysrq debug mode
BUG=b:37970194,b:36394093 BRANCH=None TEST=Verified that LED blinks when in debug mode and stops blinking on exit from debug mode. Change-Id: I536d0eeffdc59bef940ea1f0f01d7c595320d9c4 Signed-off-by: Furquan Shaikh <furquan@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/529766 Reviewed-by: Aaron Durbin <adurbin@chromium.org> Reviewed-by: Nicolas Boichat <drinkcat@chromium.org>
-rw-r--r--board/poppy/led.c32
1 files changed, 17 insertions, 15 deletions
diff --git a/board/poppy/led.c b/board/poppy/led.c
index aebd25c60f..29f5b7e7c6 100644
--- a/board/poppy/led.c
+++ b/board/poppy/led.c
@@ -143,22 +143,24 @@ DECLARE_HOOK(HOOK_TICK, led_tick, HOOK_PRIO_DEFAULT);
void led_control(enum ec_led_id led_id, enum ec_led_state state)
{
- if (led_id == EC_LED_ID_RECOVERY_HW_REINIT_LED) {
- enum led_color color;
-
- if (state == LED_STATE_RESET) {
- led_auto_control(EC_LED_ID_LEFT_LED, 1);
- led_auto_control(EC_LED_ID_RIGHT_LED, 1);
- board_led_set_battery();
- return;
- }
-
- color = state ? LED_WHITE : LED_OFF;
+ enum led_color color;
- led_auto_control(EC_LED_ID_LEFT_LED, 0);
- led_auto_control(EC_LED_ID_RIGHT_LED, 0);
+ if ((led_id != EC_LED_ID_RECOVERY_HW_REINIT_LED) &&
+ (led_id != EC_LED_ID_SYSRQ_DEBUG_LED))
+ return;
- side_led_set_color(0, color);
- side_led_set_color(1, color);
+ if (state == LED_STATE_RESET) {
+ led_auto_control(EC_LED_ID_LEFT_LED, 1);
+ led_auto_control(EC_LED_ID_RIGHT_LED, 1);
+ board_led_set_battery();
+ return;
}
+
+ color = state ? LED_WHITE : LED_OFF;
+
+ led_auto_control(EC_LED_ID_LEFT_LED, 0);
+ led_auto_control(EC_LED_ID_RIGHT_LED, 0);
+
+ side_led_set_color(0, color);
+ side_led_set_color(1, color);
}