diff options
Diffstat (limited to 'board')
-rw-r--r-- | board/bip/led.c | 3 | ||||
-rw-r--r-- | board/bobba/led.c | 3 | ||||
-rw-r--r-- | board/fleex/led.c | 3 | ||||
-rw-r--r-- | board/meep/board.c | 2 | ||||
-rw-r--r-- | board/meep/board.h | 2 | ||||
-rw-r--r-- | board/meep/led.c | 21 | ||||
-rw-r--r-- | board/phaser/led.c | 3 | ||||
-rw-r--r-- | board/yorp/led.c | 3 |
8 files changed, 27 insertions, 13 deletions
diff --git a/board/bip/led.c b/board/bip/led.c index 961d5719d8..69a20342be 100644 --- a/board/bip/led.c +++ b/board/bip/led.c @@ -18,8 +18,7 @@ const int led_charge_lvl_1 = 0; const int led_charge_lvl_2 = 100; /* Bip: Note there is only LED for charge / power */ -const struct led_descriptor - led_bat_state_table[LED_NUM_STATES][LED_NUM_PHASES] = { +struct led_descriptor led_bat_state_table[LED_NUM_STATES][LED_NUM_PHASES] = { [STATE_CHARGING_LVL_1] = {{EC_LED_COLOR_BLUE, 2 * LED_ONE_SEC}, {EC_LED_COLOR_AMBER, 2 * LED_ONE_SEC} }, [STATE_CHARGING_LVL_2] = {{EC_LED_COLOR_AMBER, LED_INDEFINITE} }, diff --git a/board/bobba/led.c b/board/bobba/led.c index a23a062ad8..c54ffb6ab2 100644 --- a/board/bobba/led.c +++ b/board/bobba/led.c @@ -18,8 +18,7 @@ const int led_charge_lvl_1 = 0; const int led_charge_lvl_2 = 100; /* Bobba: Note there is only LED for charge / power */ -const struct led_descriptor - led_bat_state_table[LED_NUM_STATES][LED_NUM_PHASES] = { +struct led_descriptor led_bat_state_table[LED_NUM_STATES][LED_NUM_PHASES] = { [STATE_CHARGING_LVL_2] = {{EC_LED_COLOR_AMBER, LED_INDEFINITE} }, [STATE_CHARGING_FULL_CHARGE] = {{EC_LED_COLOR_BLUE, LED_INDEFINITE} }, [STATE_DISCHARGE_S0] = {{EC_LED_COLOR_BLUE, LED_INDEFINITE} }, diff --git a/board/fleex/led.c b/board/fleex/led.c index 5911f36551..a58def114a 100644 --- a/board/fleex/led.c +++ b/board/fleex/led.c @@ -18,8 +18,7 @@ const int led_charge_lvl_1 = 10; const int led_charge_lvl_2 = 100; /* Fleex: Note there is only LED for charge / power */ -const struct led_descriptor - led_bat_state_table[LED_NUM_STATES][LED_NUM_PHASES] = { +struct led_descriptor led_bat_state_table[LED_NUM_STATES][LED_NUM_PHASES] = { [STATE_CHARGING_LVL_1] = {{EC_LED_COLOR_AMBER, 1 * LED_ONE_SEC}, {LED_OFF, 1 * LED_ONE_SEC} }, [STATE_CHARGING_LVL_2] = {{EC_LED_COLOR_AMBER, LED_INDEFINITE} }, diff --git a/board/meep/board.c b/board/meep/board.c index d45c2933c6..bb93e606ba 100644 --- a/board/meep/board.c +++ b/board/meep/board.c @@ -214,7 +214,7 @@ unsigned int motion_sensor_count = ARRAY_SIZE(motion_sensors); * SKU (SKU ID is 17, 18) and default SKU is 255 for factory that enable * all sensors. */ -static int board_is_convertible(void) +int board_is_convertible(void) { return sku_id == 1 || sku_id == 2 || sku_id == 3 || sku_id == 255; } diff --git a/board/meep/board.h b/board/meep/board.h index f3e14e85a5..c19c667492 100644 --- a/board/meep/board.h +++ b/board/meep/board.h @@ -105,6 +105,8 @@ enum battery_type { BATTERY_TYPE_COUNT, }; +int board_is_convertible(void); + #endif /* !__ASSEMBLER__ */ #endif /* __CROS_EC_BOARD_H */ diff --git a/board/meep/led.c b/board/meep/led.c index ccf2f2f045..7f4754ca2c 100644 --- a/board/meep/led.c +++ b/board/meep/led.c @@ -9,6 +9,7 @@ #include "gpio.h" #include "led_common.h" #include "led_states.h" +#include "hooks.h" #define LED_OFF_LVL 1 #define LED_ON_LVL 0 @@ -18,14 +19,14 @@ const int led_charge_lvl_1; const int led_charge_lvl_2 = 100; /* Meep: Note there is only LED for charge / power */ -const struct led_descriptor - led_bat_state_table[LED_NUM_STATES][LED_NUM_PHASES] = { +struct led_descriptor led_bat_state_table[LED_NUM_STATES][LED_NUM_PHASES] = { [STATE_CHARGING_LVL_1] = {{EC_LED_COLOR_AMBER, LED_INDEFINITE} }, [STATE_CHARGING_LVL_2] = {{EC_LED_COLOR_AMBER, LED_INDEFINITE} }, [STATE_CHARGING_FULL_CHARGE] = {{EC_LED_COLOR_WHITE, LED_INDEFINITE} }, [STATE_DISCHARGE_S0] = {{LED_OFF, LED_INDEFINITE} }, [STATE_DISCHARGE_S0_BAT_LOW] = {{EC_LED_COLOR_WHITE, 1 * LED_ONE_SEC}, {LED_OFF, 1 * LED_ONE_SEC} }, + /* STATE_DISCHARGE_S3 will changed if sku is clamshells */ [STATE_DISCHARGE_S3] = {{LED_OFF, LED_INDEFINITE} }, [STATE_DISCHARGE_S5] = {{LED_OFF, LED_INDEFINITE} }, [STATE_BATTERY_ERROR] = {{EC_LED_COLOR_WHITE, 0.5 * LED_ONE_SEC}, @@ -49,6 +50,22 @@ const enum ec_led_id supported_led_ids[] = { EC_LED_ID_POWER_LED }; +static void s3_led_init(void) +{ + if (!board_is_convertible()) { + led_bat_state_table[STATE_DISCHARGE_S3][LED_PHASE_0].color = + EC_LED_COLOR_WHITE; + led_bat_state_table[STATE_DISCHARGE_S3][LED_PHASE_0].time = + 1 * LED_ONE_SEC; + + led_bat_state_table[STATE_DISCHARGE_S3][LED_PHASE_1].color = + LED_OFF; + led_bat_state_table[STATE_DISCHARGE_S3][LED_PHASE_1].time = + 1 * LED_ONE_SEC; + } +} +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) diff --git a/board/phaser/led.c b/board/phaser/led.c index 46f97071c3..6fcc2e36c0 100644 --- a/board/phaser/led.c +++ b/board/phaser/led.c @@ -18,8 +18,7 @@ const int led_charge_lvl_1 = 5; const int led_charge_lvl_2 = 97; -const struct led_descriptor - led_bat_state_table[LED_NUM_STATES][LED_NUM_PHASES] = { +struct led_descriptor led_bat_state_table[LED_NUM_STATES][LED_NUM_PHASES] = { [STATE_CHARGING_LVL_1] = {{EC_LED_COLOR_RED, LED_INDEFINITE} }, [STATE_CHARGING_LVL_2] = {{EC_LED_COLOR_AMBER, LED_INDEFINITE} }, [STATE_CHARGING_FULL_CHARGE] = {{EC_LED_COLOR_GREEN, LED_INDEFINITE} }, diff --git a/board/yorp/led.c b/board/yorp/led.c index 5e97887722..08ac48661e 100644 --- a/board/yorp/led.c +++ b/board/yorp/led.c @@ -18,8 +18,7 @@ const int led_charge_lvl_1 = 0; const int led_charge_lvl_2 = 100; /* Yorp: Note there is only LED for charge / power */ -const struct led_descriptor - led_bat_state_table[LED_NUM_STATES][LED_NUM_PHASES] = { +struct led_descriptor led_bat_state_table[LED_NUM_STATES][LED_NUM_PHASES] = { [STATE_CHARGING_LVL_1] = {{EC_LED_COLOR_BLUE, 2 * LED_ONE_SEC}, {EC_LED_COLOR_AMBER, 2 * LED_ONE_SEC} }, [STATE_CHARGING_LVL_2] = {{EC_LED_COLOR_AMBER, LED_INDEFINITE} }, |