summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDiana Z <dzigterman@chromium.org>2021-04-16 12:02:12 -0600
committerCommit Bot <commit-bot@chromium.org>2021-04-22 22:30:32 +0000
commit4746791009b75da679d44d45e8487c57c9191329 (patch)
tree5401e9c35f6bae95373f5fa472680813dc69d47f
parent7fa18f56441dd596927845198ea61dbe164d7a00 (diff)
downloadchrome-ec-4746791009b75da679d44d45e8487c57c9191329.tar.gz
LED On/Off: Remove power LED config
Move the LED on/off module towards using a more flexible LED support approach. Define a weak power LED table and setter for boards to override when needed. Note that during run-time these functions will not get called since led_auto_control_is_enabled() will return false for nonexistent LEDs. This consumes an average of 165 additional bytes of flash space on boards which do not use a power LED. BRANCH=None BUG=b:185508707 TEST=make -j buildall, load on guybrush (battery LED only) and confirm no errors are seen. Load on Boten (both LEDs) and confirm behavior appears normal Signed-off-by: Diana Z <dzigterman@chromium.org> Change-Id: Iaa1e22a7f5d8be39eb8792ee13d358087d7f7482 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2832691 Reviewed-by: Aseda Aboagye <aaboagye@chromium.org>
-rw-r--r--board/akemi/board.h1
-rw-r--r--board/akemi/led.c4
-rw-r--r--board/asurada/board.h1
-rw-r--r--board/asurada/led_hayato.c4
-rw-r--r--board/boten/board.h1
-rw-r--r--board/boten/led.c4
-rw-r--r--board/casta/board.h1
-rw-r--r--board/casta/led.c4
-rw-r--r--board/cherry/board.h1
-rw-r--r--board/cherry/led.c4
-rw-r--r--board/dalboz/board.h3
-rw-r--r--board/dalboz/led.c4
-rw-r--r--board/damu/board.h1
-rw-r--r--board/damu/led.c5
-rw-r--r--board/delbin/board.h1
-rw-r--r--board/delbin/led.c4
-rw-r--r--board/eldrid/board.h1
-rw-r--r--board/eldrid/led.c4
-rw-r--r--board/fennel/board.h1
-rw-r--r--board/fennel/led.c5
-rw-r--r--board/foob/board.h1
-rw-r--r--board/foob/led.c4
-rw-r--r--board/halvor/board.h1
-rw-r--r--board/halvor/led.c4
-rw-r--r--board/helios/board.h1
-rw-r--r--board/helios/led.c4
-rw-r--r--board/kodama/board.h1
-rw-r--r--board/kodama/led.c4
-rw-r--r--board/kohaku/board.h1
-rw-r--r--board/kohaku/led.c4
-rw-r--r--board/lick/board.h1
-rw-r--r--board/lick/led.c4
-rw-r--r--board/lindar/board.h1
-rw-r--r--board/lindar/led.c4
-rw-r--r--board/lingcod/board.h1
-rw-r--r--board/lingcod/led.c4
-rw-r--r--board/madoo/board.h1
-rw-r--r--board/madoo/led.c4
-rw-r--r--board/makomo/board.h1
-rw-r--r--board/makomo/led.c4
-rw-r--r--board/malefor/board.h1
-rw-r--r--board/malefor/led.c4
-rw-r--r--board/meep/board.h1
-rw-r--r--board/meep/led.c4
-rw-r--r--board/nightfury/board.h1
-rw-r--r--board/nightfury/led.c4
-rw-r--r--board/nuwani/board.h1
-rw-r--r--board/nuwani/led.c4
-rw-r--r--board/palkia/board.h1
-rw-r--r--board/palkia/led.c4
-rw-r--r--board/phaser/board.h1
-rw-r--r--board/phaser/led.c4
-rw-r--r--board/sasuke/board.h1
-rw-r--r--board/sasuke/led.c4
-rw-r--r--board/sasukette/board.h1
-rw-r--r--board/sasukette/led.c4
-rw-r--r--board/stern/board.h1
-rw-r--r--board/stern/led.c5
-rw-r--r--board/treeya/board.h1
-rw-r--r--board/treeya/led.c4
-rw-r--r--board/vilboz/board.h3
-rw-r--r--board/vilboz/led.c4
-rw-r--r--board/woomax/board.h2
-rw-r--r--board/woomax/led.c4
-rw-r--r--common/led_onoff_states.c16
-rw-r--r--include/config.h6
-rw-r--r--include/led_onoff_states.h13
67 files changed, 79 insertions, 124 deletions
diff --git a/board/akemi/board.h b/board/akemi/board.h
index 2d4482a8d6..de542a5f0e 100644
--- a/board/akemi/board.h
+++ b/board/akemi/board.h
@@ -15,7 +15,6 @@
#define CONFIG_KEYBOARD_PROTOCOL_8042
#define CONFIG_LED_COMMON
#define CONFIG_LOW_POWER_IDLE
-#define CONFIG_LED_POWER_LED
#define CONFIG_HOSTCMD_ESPI
diff --git a/board/akemi/led.c b/board/akemi/led.c
index 977acb86ab..b21fe4d3c0 100644
--- a/board/akemi/led.c
+++ b/board/akemi/led.c
@@ -31,7 +31,7 @@ struct led_descriptor led_bat_state_table[LED_NUM_STATES][LED_NUM_PHASES] = {
{EC_LED_COLOR_GREEN, 2 * LED_ONE_SEC} },
};
-const struct led_descriptor
+__override const struct led_descriptor
led_pwr_state_table[PWR_LED_NUM_STATES][LED_NUM_PHASES] = {
[PWR_LED_STATE_ON] = {{EC_LED_COLOR_WHITE, LED_INDEFINITE} },
[PWR_LED_STATE_SUSPEND_AC] = {{EC_LED_COLOR_WHITE, 3 * LED_ONE_SEC},
@@ -48,7 +48,7 @@ const enum ec_led_id supported_led_ids[] = {
const int supported_led_ids_count = ARRAY_SIZE(supported_led_ids);
-void led_set_color_power(enum ec_led_colors color)
+__override void led_set_color_power(enum ec_led_colors color)
{
if (color == EC_LED_COLOR_WHITE)
gpio_set_level(GPIO_LED_3_L, LED_ON_LVL);
diff --git a/board/asurada/board.h b/board/asurada/board.h
index 734f4ced98..9895d1d3eb 100644
--- a/board/asurada/board.h
+++ b/board/asurada/board.h
@@ -26,7 +26,6 @@
/* LED */
#ifdef BOARD_HAYATO
-#define CONFIG_LED_POWER_LED
#define CONFIG_LED_ONOFF_STATES
#define CONFIG_LED_ONOFF_STATES_BAT_LOW 10
#endif
diff --git a/board/asurada/led_hayato.c b/board/asurada/led_hayato.c
index c06fdef0cb..99ee17bbe6 100644
--- a/board/asurada/led_hayato.c
+++ b/board/asurada/led_hayato.c
@@ -28,7 +28,7 @@ struct led_descriptor led_bat_state_table[LED_NUM_STATES][LED_NUM_PHASES] = {
{EC_LED_COLOR_AMBER, 2 * LED_ONE_SEC} },
};
-const struct led_descriptor
+__override const struct led_descriptor
led_pwr_state_table[PWR_LED_NUM_STATES][LED_NUM_PHASES] = {
[PWR_LED_STATE_ON] = {{EC_LED_COLOR_WHITE, LED_INDEFINITE} },
[PWR_LED_STATE_SUSPEND_AC] = {{EC_LED_COLOR_WHITE, 1 * LED_ONE_SEC},
@@ -67,7 +67,7 @@ void led_set_color_battery(enum ec_led_colors color)
}
}
-void led_set_color_power(enum ec_led_colors color)
+__override void led_set_color_power(enum ec_led_colors color)
{
mt6360_led_set_brightness(MT6360_LED_RGB1, 1);
mt6360_led_enable(MT6360_LED_RGB1, color == EC_LED_COLOR_WHITE);
diff --git a/board/boten/board.h b/board/boten/board.h
index f4cf889edd..d0d93a952a 100644
--- a/board/boten/board.h
+++ b/board/boten/board.h
@@ -34,7 +34,6 @@
#define CONFIG_DAC
/* LED */
-#define CONFIG_LED_POWER_LED
#define CONFIG_LED_ONOFF_STATES
/* PWM */
diff --git a/board/boten/led.c b/board/boten/led.c
index 4a9433f84c..2698edba70 100644
--- a/board/boten/led.c
+++ b/board/boten/led.c
@@ -31,7 +31,7 @@ struct led_descriptor led_bat_state_table[LED_NUM_STATES][LED_NUM_PHASES] = {
{EC_LED_COLOR_GREEN, 2 * LED_ONE_SEC} },
};
-const struct led_descriptor
+__override const struct led_descriptor
led_pwr_state_table[PWR_LED_NUM_STATES][LED_NUM_PHASES] = {
[PWR_LED_STATE_ON] = {{EC_LED_COLOR_WHITE, LED_INDEFINITE} },
[PWR_LED_STATE_SUSPEND_AC] = {{EC_LED_COLOR_WHITE, 3 * LED_ONE_SEC},
@@ -48,7 +48,7 @@ const enum ec_led_id supported_led_ids[] = {
const int supported_led_ids_count = ARRAY_SIZE(supported_led_ids);
-void led_set_color_power(enum ec_led_colors color)
+__override void led_set_color_power(enum ec_led_colors color)
{
if (color == EC_LED_COLOR_WHITE)
pwm_enable(PWM_CH_LED_WHITE, LED_ON_LVL);
diff --git a/board/casta/board.h b/board/casta/board.h
index 04008ff92c..6ce697ec37 100644
--- a/board/casta/board.h
+++ b/board/casta/board.h
@@ -16,7 +16,6 @@
#include "baseboard.h"
#define CONFIG_LED_COMMON
-#define CONFIG_LED_POWER_LED
/* USB PD */
#undef CONFIG_USB_PD_VBUS_MEASURE_ADC_EACH_PORT
diff --git a/board/casta/led.c b/board/casta/led.c
index 2f1a8a6b35..bd6e125948 100644
--- a/board/casta/led.c
+++ b/board/casta/led.c
@@ -35,7 +35,7 @@ struct led_descriptor led_bat_state_table[LED_NUM_STATES][LED_NUM_PHASES] = {
{LED_OFF, 1 * LED_ONE_SEC} },
};
-const struct led_descriptor
+__override const struct led_descriptor
led_pwr_state_table[PWR_LED_NUM_STATES][LED_NUM_PHASES] = {
[PWR_LED_STATE_ON] = {{EC_LED_COLOR_BLUE, LED_INDEFINITE} },
[PWR_LED_STATE_SUSPEND_AC] = {{LED_OFF, LED_INDEFINITE} },
@@ -50,7 +50,7 @@ const enum ec_led_id supported_led_ids[] = {
const int supported_led_ids_count = ARRAY_SIZE(supported_led_ids);
-void led_set_color_power(enum ec_led_colors color)
+__override void led_set_color_power(enum ec_led_colors color)
{
/* Don't set led if led_auto_control is disabled. */
if (!led_auto_control_is_enabled(EC_LED_ID_POWER_LED) ||
diff --git a/board/cherry/board.h b/board/cherry/board.h
index 7c5e72d9f3..adf049a864 100644
--- a/board/cherry/board.h
+++ b/board/cherry/board.h
@@ -25,7 +25,6 @@
/* BC12 */
/* LED */
-#define CONFIG_LED_POWER_LED
#define CONFIG_LED_ONOFF_STATES
#define CONFIG_LED_ONOFF_STATES_BAT_LOW 10
diff --git a/board/cherry/led.c b/board/cherry/led.c
index c06fdef0cb..99ee17bbe6 100644
--- a/board/cherry/led.c
+++ b/board/cherry/led.c
@@ -28,7 +28,7 @@ struct led_descriptor led_bat_state_table[LED_NUM_STATES][LED_NUM_PHASES] = {
{EC_LED_COLOR_AMBER, 2 * LED_ONE_SEC} },
};
-const struct led_descriptor
+__override const struct led_descriptor
led_pwr_state_table[PWR_LED_NUM_STATES][LED_NUM_PHASES] = {
[PWR_LED_STATE_ON] = {{EC_LED_COLOR_WHITE, LED_INDEFINITE} },
[PWR_LED_STATE_SUSPEND_AC] = {{EC_LED_COLOR_WHITE, 1 * LED_ONE_SEC},
@@ -67,7 +67,7 @@ void led_set_color_battery(enum ec_led_colors color)
}
}
-void led_set_color_power(enum ec_led_colors color)
+__override void led_set_color_power(enum ec_led_colors color)
{
mt6360_led_set_brightness(MT6360_LED_RGB1, 1);
mt6360_led_enable(MT6360_LED_RGB1, color == EC_LED_COLOR_WHITE);
diff --git a/board/dalboz/board.h b/board/dalboz/board.h
index d2a48dceb6..eecdc72d41 100644
--- a/board/dalboz/board.h
+++ b/board/dalboz/board.h
@@ -27,9 +27,6 @@
#define GPIO_USB1_ILIM_SEL IOEX_USB_A0_CHARGE_EN_L
#define GPIO_USB2_ILIM_SEL IOEX_USB_A1_CHARGE_EN_DB_L
-/* Power LEDs */
-#define CONFIG_LED_POWER_LED
-
/* Motion sensing drivers */
#define CONFIG_ACCELGYRO_LSM6DSM
#define CONFIG_ACCEL_LSM6DSM_INT_EVENT \
diff --git a/board/dalboz/led.c b/board/dalboz/led.c
index 6ef9c26e8c..84630de3ba 100644
--- a/board/dalboz/led.c
+++ b/board/dalboz/led.c
@@ -30,7 +30,7 @@ struct led_descriptor led_bat_state_table[LED_NUM_STATES][LED_NUM_PHASES] = {
BUILD_ASSERT(ARRAY_SIZE(led_bat_state_table) == LED_NUM_STATES);
-const struct led_descriptor
+__override const struct led_descriptor
led_pwr_state_table[PWR_LED_NUM_STATES][LED_NUM_PHASES] = {
[PWR_LED_STATE_ON] = {{EC_LED_COLOR_WHITE, LED_INDEFINITE} },
[PWR_LED_STATE_SUSPEND_AC] = {{EC_LED_COLOR_WHITE, 3 * LED_ONE_SEC},
@@ -48,7 +48,7 @@ const enum ec_led_id supported_led_ids[] = {
const int supported_led_ids_count = ARRAY_SIZE(supported_led_ids);
-void led_set_color_power(enum ec_led_colors color)
+__override void led_set_color_power(enum ec_led_colors color)
{
if (color == EC_LED_COLOR_WHITE)
gpio_set_level(GPIO_LED3_PWM, LED_ON_LVL);
diff --git a/board/damu/board.h b/board/damu/board.h
index ba80b800d6..bd81b717bf 100644
--- a/board/damu/board.h
+++ b/board/damu/board.h
@@ -51,7 +51,6 @@
#define CONFIG_USB_MUX_IT5205
#define CONFIG_LED_ONOFF_STATES
-#define CONFIG_LED_POWER_LED
#define CONFIG_LED_COMMON
/* Motion Sensors */
diff --git a/board/damu/led.c b/board/damu/led.c
index 8f5ffce7c7..7e9be12e2a 100644
--- a/board/damu/led.c
+++ b/board/damu/led.c
@@ -30,7 +30,8 @@ struct led_descriptor led_bat_state_table[LED_NUM_STATES][LED_NUM_PHASES] = {
{EC_LED_COLOR_AMBER, 2 * LED_ONE_SEC} },
};
-const struct led_descriptor led_pwr_state_table[PWR_LED_NUM_STATES][LED_NUM_PHASES] = {
+__override const struct led_descriptor
+ led_pwr_state_table[PWR_LED_NUM_STATES][LED_NUM_PHASES] = {
[PWR_LED_STATE_ON] = {{EC_LED_COLOR_WHITE, LED_INDEFINITE} },
[PWR_LED_STATE_SUSPEND_AC] = {{EC_LED_COLOR_WHITE, 1 * LED_ONE_SEC},
{LED_OFF, 3 * LED_ONE_SEC} },
@@ -63,7 +64,7 @@ void led_set_color_battery(enum ec_led_colors color)
}
}
-void led_set_color_power(enum ec_led_colors color)
+__override void led_set_color_power(enum ec_led_colors color)
{
switch (color) {
case EC_LED_COLOR_WHITE:
diff --git a/board/delbin/board.h b/board/delbin/board.h
index 1c61a52da5..59af4d864a 100644
--- a/board/delbin/board.h
+++ b/board/delbin/board.h
@@ -36,7 +36,6 @@
#define CONFIG_POWER_PP5000_CONTROL
/* LED defines */
-#define CONFIG_LED_POWER_LED
#define CONFIG_LED_ONOFF_STATES
/* Keyboard features */
diff --git a/board/delbin/led.c b/board/delbin/led.c
index fb61d35574..7793e73271 100644
--- a/board/delbin/led.c
+++ b/board/delbin/led.c
@@ -29,7 +29,7 @@ struct led_descriptor led_bat_state_table[LED_NUM_STATES][LED_NUM_PHASES] = {
{EC_LED_COLOR_AMBER, 2 * LED_ONE_SEC} },
};
-const struct led_descriptor
+__override const struct led_descriptor
led_pwr_state_table[PWR_LED_NUM_STATES][LED_NUM_PHASES] = {
[PWR_LED_STATE_ON] = {{EC_LED_COLOR_WHITE, LED_INDEFINITE} },
[PWR_LED_STATE_SUSPEND_AC] = {{EC_LED_COLOR_WHITE, 1 * LED_ONE_SEC},
@@ -65,7 +65,7 @@ void led_set_color_battery(enum ec_led_colors color)
}
}
-void led_set_color_power(enum ec_led_colors color)
+__override void led_set_color_power(enum ec_led_colors color)
{
if (color == EC_LED_COLOR_WHITE)
gpio_set_level(GPIO_LED_3_L, LED_ON_LVL);
diff --git a/board/eldrid/board.h b/board/eldrid/board.h
index 3c136902e9..06bac9b18d 100644
--- a/board/eldrid/board.h
+++ b/board/eldrid/board.h
@@ -32,7 +32,6 @@
#define CONFIG_POWER_PP5000_CONTROL
/* LED defines */
-#define CONFIG_LED_POWER_LED
#define CONFIG_LED_ONOFF_STATES
#define CONFIG_LED_ONOFF_STATES_BAT_LOW 10
diff --git a/board/eldrid/led.c b/board/eldrid/led.c
index 0a0661d5f7..570bcaab01 100644
--- a/board/eldrid/led.c
+++ b/board/eldrid/led.c
@@ -45,7 +45,7 @@ struct led_descriptor led_bat_state_table[LED_NUM_STATES][LED_NUM_PHASES] = {
},
};
-const struct led_descriptor
+__override const struct led_descriptor
led_pwr_state_table[PWR_LED_NUM_STATES][LED_NUM_PHASES] = {
[PWR_LED_STATE_ON] = {{EC_LED_COLOR_WHITE, LED_INDEFINITE} },
[PWR_LED_STATE_SUSPEND_AC] = {{EC_LED_COLOR_WHITE, 1 * LED_ONE_SEC},
@@ -106,7 +106,7 @@ void led_set_color_battery(enum ec_led_colors color)
}
}
-void led_set_color_power(enum ec_led_colors color)
+__override void led_set_color_power(enum ec_led_colors color)
{
if (color == EC_LED_COLOR_WHITE)
gpio_set_level(GPIO_POWER_LED_GATE, PWR_LED_ON_LVL);
diff --git a/board/fennel/board.h b/board/fennel/board.h
index 2aa53b89d6..d152912f7a 100644
--- a/board/fennel/board.h
+++ b/board/fennel/board.h
@@ -49,7 +49,6 @@
#define CONFIG_USB_MUX_IT5205
#define CONFIG_LED_ONOFF_STATES
-#define CONFIG_LED_POWER_LED
/* Motion Sensors */
#ifndef VARIANT_KUKUI_NO_SENSORS
diff --git a/board/fennel/led.c b/board/fennel/led.c
index 69b9fcfe97..96ad9361f9 100644
--- a/board/fennel/led.c
+++ b/board/fennel/led.c
@@ -30,7 +30,8 @@ struct led_descriptor led_bat_state_table[LED_NUM_STATES][LED_NUM_PHASES] = {
{EC_LED_COLOR_GREEN, 2 * LED_ONE_SEC} },
};
-const struct led_descriptor led_pwr_state_table[PWR_LED_NUM_STATES][LED_NUM_PHASES] = {
+__override const struct led_descriptor
+ led_pwr_state_table[PWR_LED_NUM_STATES][LED_NUM_PHASES] = {
[PWR_LED_STATE_ON] = {{EC_LED_COLOR_WHITE, LED_INDEFINITE} },
[PWR_LED_STATE_SUSPEND_AC] = {{EC_LED_COLOR_WHITE, 1 * LED_ONE_SEC},
{LED_OFF, 3 * LED_ONE_SEC} },
@@ -67,7 +68,7 @@ void led_set_color_battery(enum ec_led_colors color)
}
}
-void led_set_color_power(enum ec_led_colors color)
+__override void led_set_color_power(enum ec_led_colors color)
{
switch (color) {
case EC_LED_COLOR_WHITE:
diff --git a/board/foob/board.h b/board/foob/board.h
index 9e1c4d093c..c20c1ad33b 100644
--- a/board/foob/board.h
+++ b/board/foob/board.h
@@ -18,7 +18,6 @@
#define GPIO_VOLUME_DOWN_L GPIO_EC_VOLDN_BTN_ODL
#define CONFIG_LED_COMMON
-#define CONFIG_LED_POWER_LED
#define CONFIG_TEMP_SENSOR
#define CONFIG_THERMISTOR
#define CONFIG_STEINHART_HART_3V3_13K7_47K_4050B
diff --git a/board/foob/led.c b/board/foob/led.c
index 0b582e9ca6..c2c2957518 100644
--- a/board/foob/led.c
+++ b/board/foob/led.c
@@ -31,7 +31,7 @@ struct led_descriptor led_bat_state_table[LED_NUM_STATES][LED_NUM_PHASES] = {
{EC_LED_COLOR_GREEN, 2 * LED_ONE_SEC} },
};
-const struct led_descriptor
+__override const struct led_descriptor
led_pwr_state_table[PWR_LED_NUM_STATES][LED_NUM_PHASES] = {
[PWR_LED_STATE_ON] = {{EC_LED_COLOR_WHITE, LED_INDEFINITE} },
[PWR_LED_STATE_SUSPEND_AC] = {{EC_LED_COLOR_WHITE, 3 * LED_ONE_SEC},
@@ -47,7 +47,7 @@ const enum ec_led_id supported_led_ids[] = {
const int supported_led_ids_count = ARRAY_SIZE(supported_led_ids);
-void led_set_color_power(enum ec_led_colors color)
+__override void led_set_color_power(enum ec_led_colors color)
{
if (color == EC_LED_COLOR_WHITE)
gpio_set_level(GPIO_PWR_LED_WHITE_L, LED_ON_LVL);
diff --git a/board/halvor/board.h b/board/halvor/board.h
index da42d0fafe..818b4b79e5 100644
--- a/board/halvor/board.h
+++ b/board/halvor/board.h
@@ -20,7 +20,6 @@
#define CONFIG_UART_TX_BUF_SIZE 4096
/* LED defines */
-#define CONFIG_LED_POWER_LED
#define CONFIG_LED_ONOFF_STATES
#define CONFIG_LED_ONOFF_STATES_BAT_LOW 10
diff --git a/board/halvor/led.c b/board/halvor/led.c
index 47753899bf..b648937d3e 100644
--- a/board/halvor/led.c
+++ b/board/halvor/led.c
@@ -34,7 +34,7 @@ struct led_descriptor led_bat_state_table[LED_NUM_STATES][LED_NUM_PHASES] = {
{LED_OFF, 2 * LED_ONE_SEC} },
};
-const struct led_descriptor
+__override const struct led_descriptor
led_pwr_state_table[PWR_LED_NUM_STATES][LED_NUM_PHASES] = {
[PWR_LED_STATE_ON] = {{EC_LED_COLOR_WHITE, LED_INDEFINITE} },
[PWR_LED_STATE_SUSPEND_AC] = {{EC_LED_COLOR_WHITE, 1 * LED_ONE_SEC},
@@ -56,7 +56,7 @@ void led_set_color_battery(enum ec_led_colors color)
(color == EC_LED_COLOR_AMBER) ? LED_ON_LVL : LED_OFF_LVL);
}
-void led_set_color_power(enum ec_led_colors color)
+__override void led_set_color_power(enum ec_led_colors color)
{
gpio_set_level(GPIO_LED_1_L,
(color == EC_LED_COLOR_WHITE) ? LED_ON_LVL : LED_OFF_LVL);
diff --git a/board/helios/board.h b/board/helios/board.h
index 17e719abb0..307405ef8b 100644
--- a/board/helios/board.h
+++ b/board/helios/board.h
@@ -14,7 +14,6 @@
#define CONFIG_POWER_BUTTON
#define CONFIG_KEYBOARD_PROTOCOL_8042
#define CONFIG_LED_COMMON
-#define CONFIG_LED_POWER_LED
#define CONFIG_LOW_POWER_IDLE
#define CONFIG_HOSTCMD_ESPI
diff --git a/board/helios/led.c b/board/helios/led.c
index 2c064fb1ea..b4a89f9a08 100644
--- a/board/helios/led.c
+++ b/board/helios/led.c
@@ -31,7 +31,7 @@ struct led_descriptor led_bat_state_table[LED_NUM_STATES][LED_NUM_PHASES] = {
{EC_LED_COLOR_AMBER, 2 * LED_ONE_SEC} },
};
-const struct led_descriptor
+__override const struct led_descriptor
led_pwr_state_table[PWR_LED_NUM_STATES][LED_NUM_PHASES] = {
[PWR_LED_STATE_ON] = {{EC_LED_COLOR_WHITE, LED_INDEFINITE} },
[PWR_LED_STATE_SUSPEND_AC] = {{EC_LED_COLOR_WHITE, 1 * LED_ONE_SEC},
@@ -67,7 +67,7 @@ void led_set_color_battery(enum ec_led_colors color)
}
}
-void led_set_color_power(enum ec_led_colors color)
+__override void led_set_color_power(enum ec_led_colors color)
{
if (color == EC_LED_COLOR_WHITE)
gpio_set_level(GPIO_LED_3_L, LED_ON_LVL);
diff --git a/board/kodama/board.h b/board/kodama/board.h
index 2b5c850389..60bace8cc8 100644
--- a/board/kodama/board.h
+++ b/board/kodama/board.h
@@ -25,7 +25,6 @@
#define CONFIG_USB_MUX_IT5205
#define CONFIG_LED_ONOFF_STATES
-#define CONFIG_LED_POWER_LED
#define CONFIG_BATTERY_HW_PRESENT_CUSTOM
diff --git a/board/kodama/led.c b/board/kodama/led.c
index 61d29f9d16..0b67553a7b 100644
--- a/board/kodama/led.c
+++ b/board/kodama/led.c
@@ -36,7 +36,7 @@ struct led_descriptor led_bat_state_table[LED_NUM_STATES][LED_NUM_PHASES] = {
{EC_LED_COLOR_GREEN, 2 * LED_ONE_SEC} },
};
-const struct led_descriptor
+__override const struct led_descriptor
led_pwr_state_table[PWR_LED_NUM_STATES][LED_NUM_PHASES] = {
[PWR_LED_STATE_ON] = {{EC_LED_COLOR_WHITE, LED_INDEFINITE} },
[PWR_LED_STATE_SUSPEND_AC] = {{EC_LED_COLOR_WHITE, 3 * LED_ONE_SEC},
@@ -66,7 +66,7 @@ static void led_set_color(int mask)
mt6370_led_set_color(led_mask);
}
-void led_set_color_power(enum ec_led_colors color)
+__override void led_set_color_power(enum ec_led_colors color)
{
if (color == EC_LED_COLOR_WHITE)
led_mask |= LED_MASK_WHITE;
diff --git a/board/kohaku/board.h b/board/kohaku/board.h
index 2baa196b06..895a30f0d2 100644
--- a/board/kohaku/board.h
+++ b/board/kohaku/board.h
@@ -18,7 +18,6 @@
#define CONFIG_KEYBOARD_PROTOCOL_8042
#define CONFIG_LED_COMMON
#define CONFIG_LOW_POWER_IDLE
-#define CONFIG_LED_POWER_LED
#define CONFIG_HOSTCMD_ESPI
diff --git a/board/kohaku/led.c b/board/kohaku/led.c
index 58cdf6f175..7effe1b2bf 100644
--- a/board/kohaku/led.c
+++ b/board/kohaku/led.c
@@ -34,7 +34,7 @@ struct led_descriptor led_bat_state_table[LED_NUM_STATES][LED_NUM_PHASES] = {
{LED_OFF, 1 * LED_ONE_SEC} },
};
-const struct led_descriptor
+__override const struct led_descriptor
led_pwr_state_table[PWR_LED_NUM_STATES][LED_NUM_PHASES] = {
[PWR_LED_STATE_ON] = {{EC_LED_COLOR_BLUE, LED_INDEFINITE} },
[PWR_LED_STATE_SUSPEND_AC] = {{LED_OFF, LED_INDEFINITE} },
@@ -49,7 +49,7 @@ const enum ec_led_id supported_led_ids[] = {
const int supported_led_ids_count = ARRAY_SIZE(supported_led_ids);
-void led_set_color_power(enum ec_led_colors color)
+__override void led_set_color_power(enum ec_led_colors color)
{
/* Don't set led if led_auto_control is disabled. */
if (!led_auto_control_is_enabled(EC_LED_ID_POWER_LED) ||
diff --git a/board/lick/board.h b/board/lick/board.h
index cf3a7c013a..f377662111 100644
--- a/board/lick/board.h
+++ b/board/lick/board.h
@@ -18,7 +18,6 @@
#define GPIO_VOLUME_DOWN_L GPIO_EC_VOLDN_BTN_ODL
#define CONFIG_LED_COMMON
-#define CONFIG_LED_POWER_LED
#define CONFIG_TEMP_SENSOR
#define CONFIG_THERMISTOR
#define CONFIG_STEINHART_HART_3V3_13K7_47K_4050B
diff --git a/board/lick/led.c b/board/lick/led.c
index 3985c519f3..862eba52cb 100644
--- a/board/lick/led.c
+++ b/board/lick/led.c
@@ -31,7 +31,7 @@ struct led_descriptor led_bat_state_table[LED_NUM_STATES][LED_NUM_PHASES] = {
{EC_LED_COLOR_GREEN, 2 * LED_ONE_SEC} },
};
-const struct led_descriptor
+__override const struct led_descriptor
led_pwr_state_table[PWR_LED_NUM_STATES][LED_NUM_PHASES] = {
[PWR_LED_STATE_ON] = {{EC_LED_COLOR_WHITE, LED_INDEFINITE} },
[PWR_LED_STATE_SUSPEND_AC] = {{EC_LED_COLOR_WHITE, 3 * LED_ONE_SEC},
@@ -47,7 +47,7 @@ const enum ec_led_id supported_led_ids[] = {
const int supported_led_ids_count = ARRAY_SIZE(supported_led_ids);
-void led_set_color_power(enum ec_led_colors color)
+__override void led_set_color_power(enum ec_led_colors color)
{
if (color == EC_LED_COLOR_WHITE)
gpio_set_level(GPIO_PWR_LED_WHITE_L, LED_ON_LVL);
diff --git a/board/lindar/board.h b/board/lindar/board.h
index 2b78c25249..337dfde0bf 100644
--- a/board/lindar/board.h
+++ b/board/lindar/board.h
@@ -20,7 +20,6 @@
#define CONFIG_UART_TX_BUF_SIZE 4096
/* LED defines */
-#define CONFIG_LED_POWER_LED
#define CONFIG_LED_ONOFF_STATES
/* Keyboard features */
diff --git a/board/lindar/led.c b/board/lindar/led.c
index c59b95216a..db685faede 100644
--- a/board/lindar/led.c
+++ b/board/lindar/led.c
@@ -46,7 +46,7 @@ struct led_descriptor led_bat_state_table[LED_NUM_STATES][LED_NUM_PHASES] = {
{EC_LED_COLOR_GREEN, 2 * LED_ONE_SEC} },
};
-const struct led_descriptor
+__override const struct led_descriptor
led_pwr_state_table[PWR_LED_NUM_STATES][LED_NUM_PHASES] = {
[PWR_LED_STATE_ON] = {{EC_LED_COLOR_WHITE, LED_INDEFINITE} },
[PWR_LED_STATE_SUSPEND_AC] = {{EC_LED_COLOR_WHITE, 1 * LED_ONE_SEC},
@@ -63,7 +63,7 @@ const enum ec_led_id supported_led_ids[] = {
const int supported_led_ids_count = ARRAY_SIZE(supported_led_ids);
-void led_set_color_power(enum ec_led_colors color)
+__override void led_set_color_power(enum ec_led_colors color)
{
if (color == EC_LED_COLOR_WHITE)
gpio_set_level(GPIO_LED_3_L, LED_ON_LVL);
diff --git a/board/lingcod/board.h b/board/lingcod/board.h
index 0763c849c8..c2cef9c50b 100644
--- a/board/lingcod/board.h
+++ b/board/lingcod/board.h
@@ -22,7 +22,6 @@
#define CONFIG_UART_TX_BUF_SIZE 4096
/* LED defines */
-#define CONFIG_LED_POWER_LED
#define CONFIG_LED_ONOFF_STATES
/* Keyboard features */
diff --git a/board/lingcod/led.c b/board/lingcod/led.c
index 6f4e781404..770348e1fe 100644
--- a/board/lingcod/led.c
+++ b/board/lingcod/led.c
@@ -30,7 +30,7 @@ struct led_descriptor led_bat_state_table[LED_NUM_STATES][LED_NUM_PHASES] = {
{EC_LED_COLOR_GREEN, 2 * LED_ONE_SEC} },
};
-const struct led_descriptor
+__override const struct led_descriptor
led_pwr_state_table[PWR_LED_NUM_STATES][LED_NUM_PHASES] = {
[PWR_LED_STATE_ON] = {{EC_LED_COLOR_WHITE, LED_INDEFINITE} },
[PWR_LED_STATE_SUSPEND_AC] = {{EC_LED_COLOR_WHITE, 3 * LED_ONE_SEC},
@@ -46,7 +46,7 @@ const enum ec_led_id supported_led_ids[] = {
const int supported_led_ids_count = ARRAY_SIZE(supported_led_ids);
-void led_set_color_power(enum ec_led_colors color)
+__override void led_set_color_power(enum ec_led_colors color)
{
if (color == EC_LED_COLOR_WHITE)
gpio_set_level(GPIO_LED_3_L, LED_ON_LVL);
diff --git a/board/madoo/board.h b/board/madoo/board.h
index 0006c33f77..d947c5746a 100644
--- a/board/madoo/board.h
+++ b/board/madoo/board.h
@@ -39,7 +39,6 @@
/* LED */
#define CONFIG_LED_COMMON
-#define CONFIG_LED_POWER_LED
#define CONFIG_LED_ONOFF_STATES
#define CONFIG_LED_ONOFF_STATES_BAT_LOW 10
diff --git a/board/madoo/led.c b/board/madoo/led.c
index 31afda0f56..58387fea26 100644
--- a/board/madoo/led.c
+++ b/board/madoo/led.c
@@ -36,7 +36,7 @@ struct led_descriptor led_bat_state_table[LED_NUM_STATES][LED_NUM_PHASES] = {
{LED_OFF, 0.5 * LED_ONE_SEC} },
};
-const struct led_descriptor
+__override const struct led_descriptor
led_pwr_state_table[PWR_LED_NUM_STATES][LED_NUM_PHASES] = {
[PWR_LED_STATE_ON] = {{EC_LED_COLOR_WHITE, LED_INDEFINITE} },
[PWR_LED_STATE_SUSPEND_AC] = {{EC_LED_COLOR_WHITE, 1 * LED_ONE_SEC},
@@ -53,7 +53,7 @@ const enum ec_led_id supported_led_ids[] = {
const int supported_led_ids_count = ARRAY_SIZE(supported_led_ids);
-void led_set_color_power(enum ec_led_colors color)
+__override void led_set_color_power(enum ec_led_colors color)
{
if (color == EC_LED_COLOR_WHITE)
gpio_set_level(GPIO_PWR_LED_WHITE_L, LED_ON_LVL);
diff --git a/board/makomo/board.h b/board/makomo/board.h
index 946bf117f4..67fc07e960 100644
--- a/board/makomo/board.h
+++ b/board/makomo/board.h
@@ -49,7 +49,6 @@
#define CONFIG_USB_MUX_IT5205
#define CONFIG_LED_ONOFF_STATES
-#define CONFIG_LED_POWER_LED
/* Motion Sensors */
#ifndef VARIANT_KUKUI_NO_SENSORS
diff --git a/board/makomo/led.c b/board/makomo/led.c
index 3598b042e2..3b865949a8 100644
--- a/board/makomo/led.c
+++ b/board/makomo/led.c
@@ -30,7 +30,7 @@ struct led_descriptor led_bat_state_table[LED_NUM_STATES][LED_NUM_PHASES] = {
{EC_LED_COLOR_GREEN, 2 * LED_ONE_SEC} },
};
-const struct led_descriptor
+__override const struct led_descriptor
led_pwr_state_table[PWR_LED_NUM_STATES][LED_NUM_PHASES] = {
[PWR_LED_STATE_ON] = {{EC_LED_COLOR_WHITE, LED_INDEFINITE} },
[PWR_LED_STATE_SUSPEND_AC] = {{EC_LED_COLOR_WHITE, 1 * LED_ONE_SEC},
@@ -68,7 +68,7 @@ void led_set_color_battery(enum ec_led_colors color)
}
}
-void led_set_color_power(enum ec_led_colors color)
+__override void led_set_color_power(enum ec_led_colors color)
{
switch (color) {
case EC_LED_COLOR_WHITE:
diff --git a/board/malefor/board.h b/board/malefor/board.h
index 93a8733c55..e21984350d 100644
--- a/board/malefor/board.h
+++ b/board/malefor/board.h
@@ -22,7 +22,6 @@
#define CONFIG_UART_TX_BUF_SIZE 4096
/* LED defines */
-#define CONFIG_LED_POWER_LED
#define CONFIG_LED_ONOFF_STATES
/* Keyboard features */
diff --git a/board/malefor/led.c b/board/malefor/led.c
index 6f4e781404..770348e1fe 100644
--- a/board/malefor/led.c
+++ b/board/malefor/led.c
@@ -30,7 +30,7 @@ struct led_descriptor led_bat_state_table[LED_NUM_STATES][LED_NUM_PHASES] = {
{EC_LED_COLOR_GREEN, 2 * LED_ONE_SEC} },
};
-const struct led_descriptor
+__override const struct led_descriptor
led_pwr_state_table[PWR_LED_NUM_STATES][LED_NUM_PHASES] = {
[PWR_LED_STATE_ON] = {{EC_LED_COLOR_WHITE, LED_INDEFINITE} },
[PWR_LED_STATE_SUSPEND_AC] = {{EC_LED_COLOR_WHITE, 3 * LED_ONE_SEC},
@@ -46,7 +46,7 @@ const enum ec_led_id supported_led_ids[] = {
const int supported_led_ids_count = ARRAY_SIZE(supported_led_ids);
-void led_set_color_power(enum ec_led_colors color)
+__override void led_set_color_power(enum ec_led_colors color)
{
if (color == EC_LED_COLOR_WHITE)
gpio_set_level(GPIO_LED_3_L, LED_ON_LVL);
diff --git a/board/meep/board.h b/board/meep/board.h
index 175fe6c79c..e67a310a29 100644
--- a/board/meep/board.h
+++ b/board/meep/board.h
@@ -22,7 +22,6 @@
#define CONFIG_CMD_ACCEL_INFO
#define CONFIG_LED_COMMON
-#define CONFIG_LED_POWER_LED
/* Sensors */
#define CONFIG_ACCEL_KX022 /* Lid accel */
diff --git a/board/meep/led.c b/board/meep/led.c
index 7baedca253..e05feed42f 100644
--- a/board/meep/led.c
+++ b/board/meep/led.c
@@ -35,7 +35,7 @@ struct led_descriptor led_bat_state_table[LED_NUM_STATES][LED_NUM_PHASES] = {
{LED_OFF, 1 * LED_ONE_SEC} },
};
-const struct led_descriptor
+__override const struct led_descriptor
led_pwr_state_table[PWR_LED_NUM_STATES][LED_NUM_PHASES] = {
[PWR_LED_STATE_ON] = {{EC_LED_COLOR_WHITE, LED_INDEFINITE} },
[PWR_LED_STATE_SUSPEND_AC] = {{EC_LED_COLOR_WHITE, 1 * LED_ONE_SEC},
@@ -68,7 +68,7 @@ DECLARE_HOOK(HOOK_INIT, s3_led_init, HOOK_PRIO_DEFAULT);
const int supported_led_ids_count = ARRAY_SIZE(supported_led_ids);
-void led_set_color_power(enum ec_led_colors color)
+__override void led_set_color_power(enum ec_led_colors color)
{
if (color == EC_LED_COLOR_WHITE)
gpio_set_level(GPIO_PWR_LED_WHITE_L, LED_ON_LVL);
diff --git a/board/nightfury/board.h b/board/nightfury/board.h
index 60fd429fc4..687fc910f4 100644
--- a/board/nightfury/board.h
+++ b/board/nightfury/board.h
@@ -19,7 +19,6 @@
#define CONFIG_KEYBOARD_BOARD_CONFIG
#define CONFIG_LED_COMMON
#define CONFIG_LOW_POWER_IDLE
-#define CONFIG_LED_POWER_LED
#define CONFIG_HOSTCMD_ESPI
diff --git a/board/nightfury/led.c b/board/nightfury/led.c
index b20dbbd6f0..a70730a098 100644
--- a/board/nightfury/led.c
+++ b/board/nightfury/led.c
@@ -35,7 +35,7 @@ struct led_descriptor led_bat_state_table[LED_NUM_STATES][LED_NUM_PHASES] = {
{LED_OFF, 1 * LED_ONE_SEC} },
};
-const struct led_descriptor
+__override const struct led_descriptor
led_pwr_state_table[PWR_LED_NUM_STATES][LED_NUM_PHASES] = {
[PWR_LED_STATE_ON] = {{EC_LED_COLOR_BLUE, LED_INDEFINITE} },
[PWR_LED_STATE_SUSPEND_AC] = {{LED_OFF, LED_INDEFINITE} },
@@ -50,7 +50,7 @@ const enum ec_led_id supported_led_ids[] = {
const int supported_led_ids_count = ARRAY_SIZE(supported_led_ids);
-void led_set_color_power(enum ec_led_colors color)
+__override void led_set_color_power(enum ec_led_colors color)
{
/* Don't set led if led_auto_control is disabled. */
if (!led_auto_control_is_enabled(EC_LED_ID_POWER_LED) ||
diff --git a/board/nuwani/board.h b/board/nuwani/board.h
index 17d16110a5..780e1cd852 100644
--- a/board/nuwani/board.h
+++ b/board/nuwani/board.h
@@ -23,7 +23,6 @@
/* Power and battery LEDs */
#define CONFIG_LED_COMMON
#define CONFIG_CMD_LEDTEST
-#define CONFIG_LED_POWER_LED
#define CONFIG_LED_ONOFF_STATES
diff --git a/board/nuwani/led.c b/board/nuwani/led.c
index 9298075157..634632751f 100644
--- a/board/nuwani/led.c
+++ b/board/nuwani/led.c
@@ -29,7 +29,7 @@ struct led_descriptor
{EC_LED_COLOR_GREEN, 2 * LED_ONE_SEC} },
};
-const struct led_descriptor
+__override const struct led_descriptor
led_pwr_state_table[PWR_LED_NUM_STATES][LED_NUM_PHASES] = {
[PWR_LED_STATE_ON] = {{EC_LED_COLOR_WHITE, LED_INDEFINITE} },
[PWR_LED_STATE_SUSPEND_AC] = {{EC_LED_COLOR_WHITE, 3 * LED_ONE_SEC},
@@ -45,7 +45,7 @@ const enum ec_led_id supported_led_ids[] = {
const int supported_led_ids_count = ARRAY_SIZE(supported_led_ids);
-void led_set_color_power(enum ec_led_colors color)
+__override void led_set_color_power(enum ec_led_colors color)
{
if (color == EC_LED_COLOR_WHITE)
gpio_set_level(GPIO_POWER_LED_3_L, LED_ON_LVL);
diff --git a/board/palkia/board.h b/board/palkia/board.h
index 6164e872c1..3e1baf8a4f 100644
--- a/board/palkia/board.h
+++ b/board/palkia/board.h
@@ -14,7 +14,6 @@
#define CONFIG_POWER_BUTTON
#define CONFIG_KEYBOARD_PROTOCOL_8042
#define CONFIG_LED_COMMON
-#define CONFIG_LED_POWER_LED
#define CONFIG_LOW_POWER_IDLE
#define CONFIG_HOSTCMD_ESPI
diff --git a/board/palkia/led.c b/board/palkia/led.c
index 1fa9295c80..551dd0dbf0 100644
--- a/board/palkia/led.c
+++ b/board/palkia/led.c
@@ -31,7 +31,7 @@ struct led_descriptor led_bat_state_table[LED_NUM_STATES][LED_NUM_PHASES] = {
{EC_LED_COLOR_AMBER, 2 * LED_ONE_SEC} },
};
-const struct led_descriptor
+__override const struct led_descriptor
led_pwr_state_table[PWR_LED_NUM_STATES][LED_NUM_PHASES] = {
[PWR_LED_STATE_ON] = {{EC_LED_COLOR_WHITE, LED_INDEFINITE} },
[PWR_LED_STATE_SUSPEND_AC] = {{EC_LED_COLOR_WHITE, 1 * LED_ONE_SEC},
@@ -67,7 +67,7 @@ void led_set_color_battery(enum ec_led_colors color)
}
}
-void led_set_color_power(enum ec_led_colors color)
+__override void led_set_color_power(enum ec_led_colors color)
{
if (color == EC_LED_COLOR_WHITE)
gpio_set_level(GPIO_LED_3_L, LED_ON_LVL);
diff --git a/board/phaser/board.h b/board/phaser/board.h
index e4ca3c648c..b369997390 100644
--- a/board/phaser/board.h
+++ b/board/phaser/board.h
@@ -18,7 +18,6 @@
#define GPIO_VOLUME_DOWN_L GPIO_EC_VOLDN_BTN_ODL
#define CONFIG_LED_COMMON
-#define CONFIG_LED_POWER_LED
#define CONFIG_TEMP_SENSOR
#define CONFIG_THERMISTOR
#define CONFIG_STEINHART_HART_3V3_13K7_47K_4050B
diff --git a/board/phaser/led.c b/board/phaser/led.c
index 115832e3b6..0ad9b90f05 100644
--- a/board/phaser/led.c
+++ b/board/phaser/led.c
@@ -31,7 +31,7 @@ struct led_descriptor led_bat_state_table[LED_NUM_STATES][LED_NUM_PHASES] = {
{EC_LED_COLOR_GREEN, 2 * LED_ONE_SEC} },
};
-const struct led_descriptor
+__override const struct led_descriptor
led_pwr_state_table[PWR_LED_NUM_STATES][LED_NUM_PHASES] = {
[PWR_LED_STATE_ON] = {{EC_LED_COLOR_WHITE, LED_INDEFINITE} },
[PWR_LED_STATE_SUSPEND_AC] = {{EC_LED_COLOR_WHITE, 3 * LED_ONE_SEC},
@@ -47,7 +47,7 @@ const enum ec_led_id supported_led_ids[] = {
const int supported_led_ids_count = ARRAY_SIZE(supported_led_ids);
-void led_set_color_power(enum ec_led_colors color)
+__override void led_set_color_power(enum ec_led_colors color)
{
if (color == EC_LED_COLOR_WHITE)
gpio_set_level(GPIO_PWR_LED_WHITE_L, LED_ON_LVL);
diff --git a/board/sasuke/board.h b/board/sasuke/board.h
index bb0fd8e286..5dcfe14053 100644
--- a/board/sasuke/board.h
+++ b/board/sasuke/board.h
@@ -46,7 +46,6 @@
/* LED */
#define CONFIG_LED_COMMON
#define CONFIG_LED_ONOFF_STATES
-#define CONFIG_LED_POWER_LED
#define GPIO_BAT_LED_RED_L GPIO_LED_R_ODL
#define GPIO_BAT_LED_GREEN_L GPIO_LED_G_ODL
#define GPIO_PWR_LED_BLUE_L GPIO_LED_B_ODL
diff --git a/board/sasuke/led.c b/board/sasuke/led.c
index 335865cd60..e3fe3d2ec6 100644
--- a/board/sasuke/led.c
+++ b/board/sasuke/led.c
@@ -35,7 +35,7 @@ struct led_descriptor led_bat_state_table[LED_NUM_STATES][LED_NUM_PHASES] = {
{LED_OFF, 1 * LED_ONE_SEC} },
};
-const struct led_descriptor
+__override const struct led_descriptor
led_pwr_state_table[PWR_LED_NUM_STATES][LED_NUM_PHASES] = {
[PWR_LED_STATE_ON] = {{EC_LED_COLOR_BLUE, LED_INDEFINITE} },
[PWR_LED_STATE_SUSPEND_AC] = {{LED_OFF, LED_INDEFINITE} },
@@ -50,7 +50,7 @@ const enum ec_led_id supported_led_ids[] = {
const int supported_led_ids_count = ARRAY_SIZE(supported_led_ids);
-void led_set_color_power(enum ec_led_colors color)
+__override void led_set_color_power(enum ec_led_colors color)
{
/* Don't set led if led_auto_control is disabled. */
if (!led_auto_control_is_enabled(EC_LED_ID_POWER_LED) ||
diff --git a/board/sasukette/board.h b/board/sasukette/board.h
index 8e84201af3..2e2e302ea8 100644
--- a/board/sasukette/board.h
+++ b/board/sasukette/board.h
@@ -40,7 +40,6 @@
/* LED */
#define CONFIG_LED_COMMON
#define CONFIG_LED_ONOFF_STATES
-#define CONFIG_LED_POWER_LED
#define GPIO_BAT_LED_RED_L GPIO_LED_R_ODL
#define GPIO_BAT_LED_GREEN_L GPIO_LED_G_ODL
#define GPIO_PWR_LED_BLUE_L GPIO_LED_B_ODL
diff --git a/board/sasukette/led.c b/board/sasukette/led.c
index 116fbd6840..11b734b995 100644
--- a/board/sasukette/led.c
+++ b/board/sasukette/led.c
@@ -36,7 +36,7 @@ struct led_descriptor led_bat_state_table[LED_NUM_STATES][LED_NUM_PHASES] = {
{LED_OFF, 1 * LED_ONE_SEC} },
};
-const struct led_descriptor
+__override const struct led_descriptor
led_pwr_state_table[PWR_LED_NUM_STATES][LED_NUM_PHASES] = {
[PWR_LED_STATE_ON] = {{EC_LED_COLOR_BLUE, LED_INDEFINITE} },
[PWR_LED_STATE_SUSPEND_AC] = {{LED_OFF, LED_INDEFINITE} },
@@ -51,7 +51,7 @@ const enum ec_led_id supported_led_ids[] = {
const int supported_led_ids_count = ARRAY_SIZE(supported_led_ids);
-void led_set_color_power(enum ec_led_colors color)
+__override void led_set_color_power(enum ec_led_colors color)
{
/* Don't set led if led_auto_control is disabled. */
if (!led_auto_control_is_enabled(EC_LED_ID_POWER_LED) ||
diff --git a/board/stern/board.h b/board/stern/board.h
index a353857b61..890f5b70a2 100644
--- a/board/stern/board.h
+++ b/board/stern/board.h
@@ -51,7 +51,6 @@
#define CONFIG_USB_MUX_IT5205
#define CONFIG_LED_ONOFF_STATES
-#define CONFIG_LED_POWER_LED
#define CONFIG_LED_COMMON
/* Motion Sensors */
diff --git a/board/stern/led.c b/board/stern/led.c
index ff5f9f2373..f6205046b6 100644
--- a/board/stern/led.c
+++ b/board/stern/led.c
@@ -30,7 +30,8 @@ struct led_descriptor led_bat_state_table[LED_NUM_STATES][LED_NUM_PHASES] = {
{EC_LED_COLOR_AMBER, 2 * LED_ONE_SEC} },
};
-const struct led_descriptor led_pwr_state_table[PWR_LED_NUM_STATES][LED_NUM_PHASES] = {
+__override const struct led_descriptor
+ led_pwr_state_table[PWR_LED_NUM_STATES][LED_NUM_PHASES] = {
[PWR_LED_STATE_ON] = {{EC_LED_COLOR_WHITE, LED_INDEFINITE} },
[PWR_LED_STATE_SUSPEND_AC] = {{EC_LED_COLOR_WHITE, 1 * LED_ONE_SEC},
{LED_OFF, 3 * LED_ONE_SEC} },
@@ -62,7 +63,7 @@ void led_set_color_battery(enum ec_led_colors color)
}
}
-void led_set_color_power(enum ec_led_colors color)
+__override void led_set_color_power(enum ec_led_colors color)
{
switch (color) {
case EC_LED_COLOR_WHITE:
diff --git a/board/treeya/board.h b/board/treeya/board.h
index 4bda4cb64c..339929a873 100644
--- a/board/treeya/board.h
+++ b/board/treeya/board.h
@@ -23,7 +23,6 @@
/* Power and battery LEDs */
#define CONFIG_LED_COMMON
#define CONFIG_CMD_LEDTEST
-#define CONFIG_LED_POWER_LED
#define CONFIG_LED_ONOFF_STATES
diff --git a/board/treeya/led.c b/board/treeya/led.c
index 837d7a6723..d5d0b790be 100644
--- a/board/treeya/led.c
+++ b/board/treeya/led.c
@@ -29,7 +29,7 @@ struct led_descriptor
{EC_LED_COLOR_GREEN, 2 * LED_ONE_SEC} },
};
-const struct led_descriptor
+__override const struct led_descriptor
led_pwr_state_table[PWR_LED_NUM_STATES][LED_NUM_PHASES] = {
[PWR_LED_STATE_ON] = {{EC_LED_COLOR_WHITE, LED_INDEFINITE} },
[PWR_LED_STATE_SUSPEND_AC] = {{EC_LED_COLOR_WHITE, 3 * LED_ONE_SEC},
@@ -45,7 +45,7 @@ const enum ec_led_id supported_led_ids[] = {
const int supported_led_ids_count = ARRAY_SIZE(supported_led_ids);
-void led_set_color_power(enum ec_led_colors color)
+__override void led_set_color_power(enum ec_led_colors color)
{
if (color == EC_LED_COLOR_WHITE)
gpio_set_level(GPIO_POWER_LED_3_L, LED_ON_LVL);
diff --git a/board/vilboz/board.h b/board/vilboz/board.h
index 500299eda6..16cea08c1e 100644
--- a/board/vilboz/board.h
+++ b/board/vilboz/board.h
@@ -21,9 +21,6 @@
#define CONFIG_CHARGER_PROFILE_OVERRIDE
-/* Power LEDs */
-#define CONFIG_LED_POWER_LED
-
/* Motion sensing drivers */
#define CONFIG_ACCELGYRO_LSM6DSM
#define CONFIG_ACCEL_LSM6DSM_INT_EVENT \
diff --git a/board/vilboz/led.c b/board/vilboz/led.c
index 2da247e0bd..4d06dc0e34 100644
--- a/board/vilboz/led.c
+++ b/board/vilboz/led.c
@@ -29,7 +29,7 @@ struct led_descriptor led_bat_state_table[LED_NUM_STATES][LED_NUM_PHASES] = {
BUILD_ASSERT(ARRAY_SIZE(led_bat_state_table) == LED_NUM_STATES);
-const struct led_descriptor
+__override const struct led_descriptor
led_pwr_state_table[PWR_LED_NUM_STATES][LED_NUM_PHASES] = {
[PWR_LED_STATE_ON] = {{EC_LED_COLOR_WHITE, LED_INDEFINITE} },
[PWR_LED_STATE_SUSPEND_AC] = {{EC_LED_COLOR_WHITE, 3 * LED_ONE_SEC},
@@ -48,7 +48,7 @@ const enum ec_led_id supported_led_ids[] = {
const int supported_led_ids_count = ARRAY_SIZE(supported_led_ids);
-void led_set_color_power(enum ec_led_colors color)
+__override void led_set_color_power(enum ec_led_colors color)
{
if (color == EC_LED_COLOR_WHITE)
gpio_set_level(GPIO_LED3_PWM, LED_ON_LVL);
diff --git a/board/woomax/board.h b/board/woomax/board.h
index 10b51cfc1e..47754c46d7 100644
--- a/board/woomax/board.h
+++ b/board/woomax/board.h
@@ -17,8 +17,6 @@
#define CONFIG_USB_PORT_POWER_SMART_PORT_COUNT 1
#define CONFIG_USBC_RETIMER_PI3DPX1207
-#define CONFIG_LED_POWER_LED
-
/* Motion sensing drivers */
#define CONFIG_ACCELGYRO_BMI160
#define CONFIG_ACCELGYRO_BMI160_INT_EVENT \
diff --git a/board/woomax/led.c b/board/woomax/led.c
index 6aa6c74f94..f7d4f4daae 100644
--- a/board/woomax/led.c
+++ b/board/woomax/led.c
@@ -29,7 +29,7 @@ struct led_descriptor led_bat_state_table[LED_NUM_STATES][LED_NUM_PHASES] = {
{EC_LED_COLOR_AMBER, 2 * LED_ONE_SEC} },
};
-const struct led_descriptor
+__override const struct led_descriptor
led_pwr_state_table[PWR_LED_NUM_STATES][LED_NUM_PHASES] = {
[PWR_LED_STATE_ON] = {{EC_LED_COLOR_WHITE, LED_INDEFINITE} },
[PWR_LED_STATE_SUSPEND_AC] = {{EC_LED_COLOR_WHITE, 1 * LED_ONE_SEC},
@@ -65,7 +65,7 @@ void led_set_color_battery(enum ec_led_colors color)
}
}
-void led_set_color_power(enum ec_led_colors color)
+__override void led_set_color_power(enum ec_led_colors color)
{
if (color == EC_LED_COLOR_WHITE)
gpio_set_level(GPIO_LED_3_L, LED_ON_LVL);
diff --git a/common/led_onoff_states.c b/common/led_onoff_states.c
index 3c64882388..ef4ddbd2b5 100644
--- a/common/led_onoff_states.c
+++ b/common/led_onoff_states.c
@@ -142,7 +142,16 @@ static void led_update_battery(void)
led_set_color_battery(led_bat_state_table[led_state][phase].color);
}
-#ifdef CONFIG_LED_POWER_LED
+/*
+ * In order to support the power LED being optional, set up default power LED
+ * table and setter
+ */
+__overridable const struct led_descriptor
+ led_pwr_state_table[PWR_LED_NUM_STATES][LED_NUM_PHASES];
+__overridable void led_set_color_power(enum ec_led_colors color)
+{
+}
+
static enum pwr_led_states pwr_led_get_state(void)
{
if (chipset_in_state(CHIPSET_STATE_ANY_SUSPEND)) {
@@ -201,7 +210,6 @@ static void led_update_power(void)
led_set_color_power(led_pwr_state_table[led_state][phase].color);
}
-#endif
static void led_init(void)
{
@@ -210,10 +218,8 @@ static void led_init(void)
led_set_color_battery(LED_OFF);
/* If power LED is enabled, set it to "off" to start with */
-#ifdef CONFIG_LED_POWER_LED
if (led_auto_control_is_enabled(EC_LED_ID_POWER_LED))
led_set_color_power(LED_OFF);
-#endif /* CONFIG_LED_POWER_LED */
}
DECLARE_HOOK(HOOK_INIT, led_init, HOOK_PRIO_DEFAULT);
@@ -227,9 +233,7 @@ static void led_update(void)
*/
if (led_auto_control_is_enabled(EC_LED_ID_BATTERY_LED))
led_update_battery();
-#ifdef CONFIG_LED_POWER_LED
if (led_auto_control_is_enabled(EC_LED_ID_POWER_LED))
led_update_power();
-#endif
}
DECLARE_HOOK(HOOK_TICK, led_update, HOOK_PRIO_DEFAULT);
diff --git a/include/config.h b/include/config.h
index b9bd58c42d..3de3ab11f0 100644
--- a/include/config.h
+++ b/include/config.h
@@ -2845,12 +2845,6 @@
#undef CONFIG_LED_ONOFF_STATES_BAT_LOW
/*
- * Adds a power LED under the control of the board-defined lookup table.
- * Must be used with the CONFIG_LED_ONOFF_STATES option.
- */
-#undef CONFIG_LED_POWER_LED
-
-/*
* LEDs for LED_POLICY STD may be inverted. In this case they are active low
* and the GPIO names will be GPIO_LED..._L.
*/
diff --git a/include/led_onoff_states.h b/include/led_onoff_states.h
index 21a51a8501..355439abe3 100644
--- a/include/led_onoff_states.h
+++ b/include/led_onoff_states.h
@@ -64,7 +64,6 @@ extern const int led_charge_lvl_1;
/* Charging LED state level 2 - defined in board's led.c */
extern const int led_charge_lvl_2;
-#ifdef CONFIG_LED_POWER_LED
enum pwr_led_states {
PWR_LED_STATE_ON,
PWR_LED_STATE_SUSPEND_AC,
@@ -73,12 +72,6 @@ enum pwr_led_states {
PWR_LED_NUM_STATES
};
-/* Power LED state table - defined in board's led.c */
-extern const struct led_descriptor
- led_pwr_state_table[PWR_LED_NUM_STATES][LED_NUM_PHASES];
-
-#endif
-
/**
* Set battery LED color - defined in board's led.c
*
@@ -87,12 +80,10 @@ extern const struct led_descriptor
*/
void led_set_color_battery(enum ec_led_colors color);
-#ifdef CONFIG_LED_POWER_LED
/**
- * Set power LED color - defined in board's led.c
+ * Set power LED color - defined in board's led.c if supported
*/
-void led_set_color_power(enum ec_led_colors color);
-#endif
+__override_proto void led_set_color_power(enum ec_led_colors color);
__override_proto enum led_states
board_get_led_state(enum led_states desired_state);