diff options
-rw-r--r-- | board/dratini/board.c | 24 | ||||
-rw-r--r-- | board/dratini/board.h | 1 |
2 files changed, 25 insertions, 0 deletions
diff --git a/board/dratini/board.c b/board/dratini/board.c index 0bb5a1a785..f6fe06cdbc 100644 --- a/board/dratini/board.c +++ b/board/dratini/board.c @@ -372,3 +372,27 @@ void board_overcurrent_event(int port, int is_overcurrented) /* Note that the level is inverted because the pin is active low. */ gpio_set_level(GPIO_USB_C_OC_ODL, !is_overcurrented); } + +bool board_has_kb_backlight(void) +{ + uint8_t sku_id = get_board_sku(); + /* + * SKUs have keyboard backlight. + * Dratini: 2, 3 + * Dragonair: 22 + */ + return sku_id == 2 || sku_id == 3 || sku_id == 22; +} + +uint32_t board_override_feature_flags0(uint32_t flags0) +{ + if (board_has_kb_backlight()) + return flags0; + else + return (flags0 & ~EC_FEATURE_MASK_0(EC_FEATURE_PWM_KEYB)); +} + +uint32_t board_override_feature_flags1(uint32_t flags1) +{ + return flags1; +} diff --git a/board/dratini/board.h b/board/dratini/board.h index 6b0f1e34c7..700c45769a 100644 --- a/board/dratini/board.h +++ b/board/dratini/board.h @@ -11,6 +11,7 @@ /* Baseboard features */ #include "baseboard.h" +#define CONFIG_EC_FEATURE_BOARD_OVERRIDE #define CONFIG_POWER_BUTTON #define CONFIG_KEYBOARD_BOARD_CONFIG #define CONFIG_KEYBOARD_PROTOCOL_8042 |