summaryrefslogtreecommitdiff
path: root/board/phaser
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 /board/phaser
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>
Diffstat (limited to 'board/phaser')
-rw-r--r--board/phaser/board.h1
-rw-r--r--board/phaser/led.c4
2 files changed, 2 insertions, 3 deletions
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);