diff options
Diffstat (limited to 'board/kukui/led.c')
-rw-r--r-- | board/kukui/led.c | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/board/kukui/led.c b/board/kukui/led.c index 9de4ac0925..2f857f8029 100644 --- a/board/kukui/led.c +++ b/board/kukui/led.c @@ -112,3 +112,24 @@ static void led_second(void) led_reset_auto_control(); } DECLARE_HOOK(HOOK_SECOND, led_second, HOOK_PRIO_DEFAULT); + +__override void led_control(enum ec_led_id led_id, enum ec_led_state state) +{ + uint8_t br[EC_LED_COLOR_COUNT] = { 0 }; + + if ((led_id != EC_LED_ID_RECOVERY_HW_REINIT_LED) && + (led_id != EC_LED_ID_SYSRQ_DEBUG_LED)) + return; + + if (state == LED_STATE_RESET) { + led_reset_auto_control(); + led_auto_control(EC_LED_ID_BATTERY_LED, 1); + return; + } + + if (state) + br[EC_LED_COLOR_GREEN] = 1; + + led_auto_control(EC_LED_ID_BATTERY_LED, 0); + led_set_brightness(EC_LED_ID_BATTERY_LED, br); +} |