summaryrefslogtreecommitdiff
path: root/board/morphius
diff options
context:
space:
mode:
authorDevin Lu <devin.lu@quantatw.com>2020-04-16 21:48:45 +0800
committerCommit Bot <commit-bot@chromium.org>2020-04-20 09:52:26 +0000
commit5fac22017d5bc21897ebee1790dab392ccd1067f (patch)
treee15e732359169f8e2eb5272874de7e0150c745d6 /board/morphius
parente1ce7b0c3d285cf7f228fb0db4d7e2bafca0c24a (diff)
downloadchrome-ec-5fac22017d5bc21897ebee1790dab392ccd1067f.tar.gz
morphius: add led behavior with force charging idle
This patch adds force charging idle led behavior for factory. BUG=none BRANCH=none TEST=use ectool chargecontrol idle then make sure led blinking amber. Change-Id: I096fbaf4260d170b3fd48cc6f433e5319584260d Signed-off-by: Devin Lu <Devin.Lu@quantatw.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2152038 Reviewed-by: Edward Hill <ecgh@chromium.org> Reviewed-by: Denis Brockus <dbrockus@chromium.org>
Diffstat (limited to 'board/morphius')
-rw-r--r--board/morphius/led.c11
1 files changed, 10 insertions, 1 deletions
diff --git a/board/morphius/led.c b/board/morphius/led.c
index fc8ea5d66b..a3b57d6546 100644
--- a/board/morphius/led.c
+++ b/board/morphius/led.c
@@ -147,6 +147,11 @@ DECLARE_HOOK(HOOK_CHIPSET_SHUTDOWN, suspend_led_deinit, HOOK_PRIO_DEFAULT);
static void led_set_battery(void)
{
+ static int battery_ticks;
+ uint32_t chflags = charge_get_flags();
+
+ battery_ticks++;
+
switch (charge_get_state()) {
case PWR_STATE_CHARGE:
/* Always indicate when charging, even in suspend. */
@@ -159,7 +164,11 @@ static void led_set_battery(void)
led_set_color_battery(LED_WHITE);
break;
case PWR_STATE_IDLE: /* External power connected in IDLE */
- led_set_color_battery(LED_WHITE);
+ if (chflags & CHARGE_FLAG_FORCE_IDLE)
+ led_set_color_battery(
+ (battery_ticks & 0x4) ? LED_AMBER : LED_OFF);
+ else
+ led_set_color_battery(LED_WHITE);
break;
default:
/* Other states don't alter LED behavior */