diff --git a/board/eve/board.h b/board/eve/board.h index f49c5c25c6..f1b90dd82a 100644 --- a/board/eve/board.h +++ b/board/eve/board.h @@ -77,6 +77,7 @@ /* Battery */ #define CONFIG_BATTERY_CUT_OFF #define CONFIG_BATTERY_DEVICE_CHEMISTRY "LION" +#define CONFIG_BATTERY_LEVEL_NEAR_FULL 94 #define CONFIG_BATTERY_PRESENT_CUSTOM #define CONFIG_BATTERY_REVIVE_DISCONNECT #define CONFIG_BATTERY_SMART @@ -109,6 +110,7 @@ #define CONFIG_POWER_BUTTON_X86 #define CONFIG_POWER_COMMON #define CONFIG_POWER_SIGNAL_INTERRUPT_STORM_DETECT_THRESHOLD 30 +#define CONFIG_PWR_STATE_DISCHARGE_FULL /* Sensor */ #define CONFIG_MKBP_EVENT diff --git a/board/eve/led.c b/board/eve/led.c index ddc3efa567..9c5a08b2bd 100644 --- a/board/eve/led.c +++ b/board/eve/led.c @@ -140,6 +140,10 @@ static void eve_led_set_power_battery(void) PWR_STATE_CHARGE_NEAR_FULL) { set_color(LED_GREEN, side); blueside = !side; + } else if (chg_state == PWR_STATE_DISCHARGE_FULL && + extpower_is_present()) { + set_color(LED_GREEN, side); + blueside = !side; } set_color(LED_BLUE, blueside); return; @@ -165,8 +169,13 @@ static void eve_led_set_power_battery(void) } else if (chg_state == PWR_STATE_CHARGE) { set_color(LED_AMBER, side); blinkside = !side; + } else if (chg_state == PWR_STATE_DISCHARGE_FULL && + extpower_is_present()) { + set_color(LED_GREEN, side); + blinkside = !side; } if (chg_state == PWR_STATE_DISCHARGE || + chg_state == PWR_STATE_DISCHARGE_FULL || chg_state == PWR_STATE_CHARGE || chg_state == PWR_STATE_CHARGE_NEAR_FULL || chg_state == PWR_STATE_IDLE) { @@ -183,6 +192,11 @@ static void eve_led_set_power_battery(void) /* CHIPSET_STATE_OFF */ switch (chg_state) { + case PWR_STATE_DISCHARGE_FULL: + set_color(LED_OFF, LED_BOTH); + if (extpower_is_present()) + set_color(LED_GREEN, side); + break; case PWR_STATE_DISCHARGE: set_color(LED_OFF, LED_BOTH); break;