diff options
author | Elmo_Lan <elmo_lan@compal.corp-partner.google.com> | 2018-01-23 07:12:46 -0500 |
---|---|---|
committer | ChromeOS Commit Bot <chromeos-commit-bot@chromium.org> | 2018-03-05 20:00:37 +0000 |
commit | 1f413d44332a4a148658e1cbfba642f60446df46 (patch) | |
tree | 4bf4cbcfd33118ccba1b66464c5af1d52b5d47df /board/nami | |
parent | 821ce6098d0d64dfe8d9056f3095e6324f73bcdb (diff) | |
download | chrome-ec-1f413d44332a4a148658e1cbfba642f60446df46.tar.gz |
Nami: add keyboard backlight function
Base on LM3509 chip. Add file LM3509.C and LM3509.H
to control keyboard backlight when S0/LidOpen is turn on,
others is turn off.
BUG=b:73055990
BRANCH=none
TEST=Verify keyboard backlight function in resume and suspend.
S0/LidOpen is turn on; S4/S5/G3/LidClose is turn off.
Change-Id: Ief9e385f969c9dfc9e8f0d4e47ea7803cee747aa
Signed-off-by: Elmo_Lan <elmo_lan@compal.corp-partner.google.com>
Reviewed-on: https://chromium-review.googlesource.com/881081
Commit-Ready: Raymond Chou <raymond_chou@compal.corp-partner.google.com>
Tested-by: Elthan Huang <elthan_huang@compal.corp-partner.google.com>
Reviewed-by: Daisuke Nojiri <dnojiri@chromium.org>
Reviewed-by: Elthan Huang <elthan_huang@compal.corp-partner.google.com>
(cherry picked from commit 6790a884a46f18e858a6b308d3b00f86ef915e3f)
Reviewed-on: https://chromium-review.googlesource.com/949616
Reviewed-by: Furquan Shaikh <furquan@chromium.org>
Commit-Queue: Furquan Shaikh <furquan@chromium.org>
Tested-by: Furquan Shaikh <furquan@chromium.org>
Trybot-Ready: Furquan Shaikh <furquan@chromium.org>
Diffstat (limited to 'board/nami')
-rw-r--r-- | board/nami/board.c | 14 | ||||
-rw-r--r-- | board/nami/board.h | 6 |
2 files changed, 18 insertions, 2 deletions
diff --git a/board/nami/board.c b/board/nami/board.c index 81241ef264..8bb9eef9d3 100644 --- a/board/nami/board.c +++ b/board/nami/board.c @@ -21,6 +21,7 @@ #include "driver/accel_bma2x2.h" #include "driver/als_opt3001.h" #include "driver/baro_bmp280.h" +#include "driver/led/lm3509.h" #include "driver/tcpm/ps8xxx.h" #include "driver/tcpm/tcpci.h" #include "driver/tcpm/tcpm.h" @@ -695,6 +696,8 @@ void lid_angle_peripheral_enable(int enable) static void board_chipset_resume(void) { gpio_set_level(GPIO_ENABLE_BACKLIGHT_L, 0); + if (lid_is_open()) + lm3509_poweron(); } DECLARE_HOOK(HOOK_CHIPSET_RESUME, board_chipset_resume, HOOK_PRIO_DEFAULT); @@ -702,5 +705,16 @@ DECLARE_HOOK(HOOK_CHIPSET_RESUME, board_chipset_resume, HOOK_PRIO_DEFAULT); static void board_chipset_suspend(void) { gpio_set_level(GPIO_ENABLE_BACKLIGHT_L, 1); + lm3509_poweroff(); } DECLARE_HOOK(HOOK_CHIPSET_SUSPEND, board_chipset_suspend, HOOK_PRIO_DEFAULT); + +/* Control keyboard backlight when Lid status change */ +static void lm3509_kblight_lid_change(void) +{ + if (lid_is_open()) + lm3509_poweron(); + else + lm3509_poweroff(); +} +DECLARE_HOOK(HOOK_LID_CHANGE, lm3509_kblight_lid_change, HOOK_PRIO_DEFAULT); diff --git a/board/nami/board.h b/board/nami/board.h index e88b7b0621..2d1d256c92 100644 --- a/board/nami/board.h +++ b/board/nami/board.h @@ -126,6 +126,9 @@ #define CONFIG_LID_ANGLE_TABLET_MODE #define CONFIG_LID_ANGLE_INVALID_CHECK +/* KB backlight driver */ +#define CONFIG_LED_DRIVER_LM3509 + /* FIFO size is in power of 2. */ #define CONFIG_ACCEL_FIFO 1024 @@ -176,12 +179,11 @@ #define I2C_PORT_BATTERY NPCX_I2C_PORT1 #define I2C_PORT_CHARGER NPCX_I2C_PORT1 #define I2C_PORT_PMIC NPCX_I2C_PORT2 -/* dnojiri: KB backlight */ +#define I2C_PORT_KBLIGHT NPCX_I2C_PORT2 #define I2C_PORT_GYRO NPCX_I2C_PORT3 #define I2C_PORT_ACCEL NPCX_I2C_PORT3 #define I2C_PORT_THERMAL NPCX_I2C_PORT3 #define I2C_PORT_ALS NPCX_I2C_PORT3 -/* dnojiri: ALS, G-sensor */ /* I2C addresses */ #define I2C_ADDR_MP2949 0x40 |