diff options
Diffstat (limited to 'board/moonbuggy')
-rw-r--r-- | board/moonbuggy/board.c | 43 | ||||
-rw-r--r-- | board/moonbuggy/board.h | 4 | ||||
-rw-r--r-- | board/moonbuggy/led.c | 34 |
3 files changed, 44 insertions, 37 deletions
diff --git a/board/moonbuggy/board.c b/board/moonbuggy/board.c index c69acde7e1..0ebf1380cb 100644 --- a/board/moonbuggy/board.c +++ b/board/moonbuggy/board.c @@ -123,10 +123,12 @@ const struct pwm_t pwm_channels[] = { .flags = PWM_CONFIG_OPEN_DRAIN, .freq = 25000}, [PWM_CH_LED_RED] = { .channel = 0, - .flags = PWM_CONFIG_DSLEEP, + .flags = PWM_CONFIG_ACTIVE_LOW | + PWM_CONFIG_DSLEEP, .freq = 2000 }, - [PWM_CH_LED_WHITE] = { .channel = 2, - .flags = PWM_CONFIG_DSLEEP, + [PWM_CH_LED_BLUE] = { .channel = 2, + .flags = PWM_CONFIG_ACTIVE_LOW | + PWM_CONFIG_DSLEEP, .freq = 2000 }, }; @@ -227,23 +229,28 @@ BUILD_ASSERT(ARRAY_SIZE(mft_channels) == MFT_CH_COUNT); /******************************************************************************/ /* Thermal control; drive fan based on temperature sensors. */ -const static struct ec_thermal_config thermal_a = { - .temp_host = { - [EC_TEMP_THRESH_WARN] = 0, - [EC_TEMP_THRESH_HIGH] = C_TO_K(85), - [EC_TEMP_THRESH_HALT] = C_TO_K(90), - }, - .temp_host_release = { - [EC_TEMP_THRESH_WARN] = 0, - [EC_TEMP_THRESH_HIGH] = C_TO_K(78), - [EC_TEMP_THRESH_HALT] = 0, - }, - .temp_fan_off = C_TO_K(25), - .temp_fan_max = C_TO_K(89), -}; +/* + * TODO(b/202062363): Remove when clang is fixed. + */ +#define THERMAL_A \ + { \ + .temp_host = { \ + [EC_TEMP_THRESH_WARN] = 0, \ + [EC_TEMP_THRESH_HIGH] = C_TO_K(85), \ + [EC_TEMP_THRESH_HALT] = C_TO_K(90), \ + }, \ + .temp_host_release = { \ + [EC_TEMP_THRESH_WARN] = 0, \ + [EC_TEMP_THRESH_HIGH] = C_TO_K(78), \ + [EC_TEMP_THRESH_HALT] = 0, \ + }, \ + .temp_fan_off = C_TO_K(25), \ + .temp_fan_max = C_TO_K(89), \ + } +__maybe_unused static const struct ec_thermal_config thermal_a = THERMAL_A; struct ec_thermal_config thermal_params[] = { - [TEMP_SENSOR_CORE] = thermal_a, + [TEMP_SENSOR_CORE] = THERMAL_A, }; BUILD_ASSERT(ARRAY_SIZE(thermal_params) == TEMP_SENSOR_COUNT); diff --git a/board/moonbuggy/board.h b/board/moonbuggy/board.h index a42aab0cbf..6dfaa73d53 100644 --- a/board/moonbuggy/board.h +++ b/board/moonbuggy/board.h @@ -38,7 +38,7 @@ #define CONFIG_MKBP_USE_HOST_EVENT #undef CONFIG_KEYBOARD_RUNTIME_KEYS #undef CONFIG_HIBERNATE -#define CONFIG_HOSTCMD_ESPI +#define CONFIG_HOST_INTERFACE_ESPI #define CONFIG_LED_COMMON #undef CONFIG_LID_SWITCH #define CONFIG_LTO @@ -147,7 +147,7 @@ enum adc_channel { enum pwm_channel { PWM_CH_FAN, PWM_CH_LED_RED, - PWM_CH_LED_WHITE, + PWM_CH_LED_BLUE, /* Number of PWM channels */ PWM_CH_COUNT }; diff --git a/board/moonbuggy/led.c b/board/moonbuggy/led.c index a9f70d2d40..fc485887f0 100644 --- a/board/moonbuggy/led.c +++ b/board/moonbuggy/led.c @@ -34,7 +34,7 @@ const int supported_led_ids_count = ARRAY_SIZE(supported_led_ids); enum led_color { LED_OFF = 0, LED_RED, - LED_WHITE, + LED_BLUE, LED_AMBER, /* Number of colors, not a color itself */ @@ -43,7 +43,7 @@ enum led_color { static int set_color_power(enum led_color color, int duty) { - int white = 0; + int blue = 0; int red = 0; if (duty < 0 || 100 < duty) @@ -52,15 +52,15 @@ static int set_color_power(enum led_color color, int duty) switch (color) { case LED_OFF: break; - case LED_WHITE: - white = 1; + case LED_BLUE: + blue = 1; break; case LED_RED: red = 1; break; case LED_AMBER: red = 1; - white = 1; + blue = 1; break; default: return EC_ERROR_UNKNOWN; @@ -71,10 +71,10 @@ static int set_color_power(enum led_color color, int duty) else pwm_set_duty(PWM_CH_LED_RED, 0); - if (white) - pwm_set_duty(PWM_CH_LED_WHITE, duty); + if (blue) + pwm_set_duty(PWM_CH_LED_BLUE, duty); else - pwm_set_duty(PWM_CH_LED_WHITE, 0); + pwm_set_duty(PWM_CH_LED_BLUE, 0); return EC_SUCCESS; } @@ -142,7 +142,7 @@ static void led_tick(void) static void led_suspend(void) { - CONFIG_TICK(LED_PULSE_TICK_US, LED_WHITE); + CONFIG_TICK(LED_PULSE_TICK_US, LED_BLUE); led_tick(); } DECLARE_DEFERRED(led_suspend); @@ -181,14 +181,14 @@ static void led_resume(void) hook_call_deferred(&led_suspend_data, -1); hook_call_deferred(&led_shutdown_data, -1); if (led_auto_control_is_enabled(EC_LED_ID_POWER_LED)) - set_color(EC_LED_ID_POWER_LED, LED_WHITE, 100); + set_color(EC_LED_ID_POWER_LED, LED_BLUE, 100); } DECLARE_HOOK(HOOK_CHIPSET_RESUME, led_resume, HOOK_PRIO_DEFAULT); static void led_init(void) { pwm_enable(PWM_CH_LED_RED, 1); - pwm_enable(PWM_CH_LED_WHITE, 1); + pwm_enable(PWM_CH_LED_BLUE, 1); if (chipset_in_state(CHIPSET_STATE_ON)) led_resume(); @@ -237,8 +237,8 @@ static int command_led(int argc, char **argv) set_color(id, LED_OFF, 0); } else if (!strcasecmp(argv[1], "red")) { set_color(id, LED_RED, 100); - } else if (!strcasecmp(argv[1], "white")) { - set_color(id, LED_WHITE, 100); + } else if (!strcasecmp(argv[1], "blue")) { + set_color(id, LED_BLUE, 100); } else if (!strcasecmp(argv[1], "amber")) { set_color(id, LED_AMBER, 100); } else if (!strcasecmp(argv[1], "alert")) { @@ -251,13 +251,13 @@ static int command_led(int argc, char **argv) return EC_SUCCESS; } DECLARE_CONSOLE_COMMAND(led, command_led, - "[debug|red|white|amber|off|alert|crit]", + "[debug|red|blue|amber|off|alert|crit]", "Turn on/off LED."); void led_get_brightness_range(enum ec_led_id led_id, uint8_t *brightness_range) { brightness_range[EC_LED_COLOR_RED] = 100; - brightness_range[EC_LED_COLOR_WHITE] = 100; + brightness_range[EC_LED_COLOR_BLUE] = 100; brightness_range[EC_LED_COLOR_AMBER] = 100; } @@ -265,8 +265,8 @@ int led_set_brightness(enum ec_led_id id, const uint8_t *brightness) { if (brightness[EC_LED_COLOR_RED]) return set_color(id, LED_RED, brightness[EC_LED_COLOR_RED]); - else if (brightness[EC_LED_COLOR_WHITE]) - return set_color(id, LED_WHITE, brightness[EC_LED_COLOR_WHITE]); + else if (brightness[EC_LED_COLOR_BLUE]) + return set_color(id, LED_BLUE, brightness[EC_LED_COLOR_BLUE]); else if (brightness[EC_LED_COLOR_AMBER]) return set_color(id, LED_AMBER, brightness[EC_LED_COLOR_AMBER]); else |