diff options
author | Yilun Lin <yllin@google.com> | 2019-04-19 13:27:39 +0800 |
---|---|---|
committer | chrome-bot <chrome-bot@chromium.org> | 2019-05-12 19:27:41 -0700 |
commit | 3e2c751048cc3d4b84373b07013e7c904eb4a5d3 (patch) | |
tree | e76871c42788245385ce26ef76eaca213947fc6f | |
parent | be5ef157cf823126acb60aabc8595e1d8ac1b77e (diff) | |
download | chrome-ec-3e2c751048cc3d4b84373b07013e7c904eb4a5d3.tar.gz |
charger/rt946x,krane: Enable backlight power.
Krane's backlight power and PWM is controlled by mt6370.
TEST=See the backlight is enabled on krane.
BUG=b:131125903
BRANCH=None
Change-Id: I9276a73d1a36e6b1eb64b39d7e9e988cda164ada
Signed-off-by: Yilun Lin <yllin@google.com>
Reviewed-on: https://chromium-review.googlesource.com/1575051
Commit-Ready: ChromeOS CL Exonerator Bot <chromiumos-cl-exonerator@appspot.gserviceaccount.com>
Tested-by: Yilun Lin <yllin@chromium.org>
Reviewed-by: Ting Shen <phoenixshen@chromium.org>
-rw-r--r-- | board/kukui/board.h | 1 | ||||
-rw-r--r-- | driver/charger/rt946x.c | 9 | ||||
-rw-r--r-- | driver/charger/rt946x.h | 20 | ||||
-rw-r--r-- | include/config.h | 6 |
4 files changed, 36 insertions, 0 deletions
diff --git a/board/kukui/board.h b/board/kukui/board.h index d9b35e7142..262052fe8e 100644 --- a/board/kukui/board.h +++ b/board/kukui/board.h @@ -132,6 +132,7 @@ #define CONFIG_BATTERY_REVIVE_DISCONNECT #ifdef BOARD_KRANE #define CONFIG_BATTERY_MM8013 +#define CONFIG_CHARGER_MT6370_BACKLIGHT #else #define CONFIG_BATTERY_MAX17055 #define CONFIG_BATTERY_MAX17055_ALERT diff --git a/driver/charger/rt946x.c b/driver/charger/rt946x.c index 984c1d1d4f..b9518eec42 100644 --- a/driver/charger/rt946x.c +++ b/driver/charger/rt946x.c @@ -458,6 +458,15 @@ static int rt946x_init_setting(void) if (rv) return rv; +#ifdef CONFIG_CHARGER_MT6370_BACKLIGHT + rt946x_write8(MT6370_BACKLIGHT_BLEN, + MT6370_MASK_BLED_EXT_EN | MT6370_MASK_BLED_EN | + MT6370_MASK_BLED_1CH_EN | MT6370_MASK_BLED_2CH_EN | + MT6370_MASK_BLED_3CH_EN | MT6370_MASK_BLED_4CH_EN); + rt946x_update_bits(MT6370_BACKLIGHT_BLPWM, MT6370_MASK_BLPWM_BLED_PWM, + BIT(MT6370_SHIFT_BLPWM_BLED_PWM)); +#endif + return rt946x_init_irq(); } diff --git a/driver/charger/rt946x.h b/driver/charger/rt946x.h index f4f37975ad..29e36f0ac9 100644 --- a/driver/charger/rt946x.h +++ b/driver/charger/rt946x.h @@ -493,6 +493,26 @@ #define MT6370_MASK_DB_FREQ_PM 1 #define MT6370_MASK_DB_PERIODIC_MODE 1 +/* ========== BLEN 0xA0 (mt6370) ============ */ +#define MT6370_SHIFT_BLED_EXT_EN 7 +#define MT6370_SHIFT_BLED_EN 6 +#define MT6370_SHIFT_BLED_1CH_EN 5 +#define MT6370_SHIFT_BLED_2CH_EN 4 +#define MT6370_SHIFT_BLED_3CH_EN 3 +#define MT6370_SHIFT_BLED_4CH_EN 2 + +#define MT6370_MASK_BLED_EXT_EN BIT(MT6370_SHIFT_BLED_EXT_EN) +#define MT6370_MASK_BLED_EN BIT(MT6370_SHIFT_BLED_EN) +#define MT6370_MASK_BLED_1CH_EN BIT(MT6370_SHIFT_BLED_1CH_EN) +#define MT6370_MASK_BLED_2CH_EN BIT(MT6370_SHIFT_BLED_2CH_EN) +#define MT6370_MASK_BLED_3CH_EN BIT(MT6370_SHIFT_BLED_3CH_EN) +#define MT6370_MASK_BLED_4CH_EN BIT(MT6370_SHIFT_BLED_4CH_EN) + +/* ========== BLPWM 0xA2 (mt6370) ============ */ +#define MT6370_SHIFT_BLPWM_BLED_PWM 7 + +#define MT6370_MASK_BLPWM_BLED_PWM BIT(MT6370_SHIFT_BLPWM_BLED_PWM) + /* ========== CHGSTAT2 0xD1 (mt6370) ============ */ #ifdef CONFIG_CHARGER_MT6370 #define MT6370_SHIFT_CHG_VBUSOV_STAT 7 diff --git a/include/config.h b/include/config.h index f1719806da..9015c6cd78 100644 --- a/include/config.h +++ b/include/config.h @@ -763,6 +763,12 @@ #undef CONFIG_CHARGER_CURRENT_LIMIT /* + * MT6370 backlight control settings. + * If defined, Panel backlight power is controlled by MT6370. + */ +#undef CONFIG_CHARGER_MT6370_BACKLIGHT + +/* * Enable/disable system power monitor PSYS function: this enables output * from charger chip to SoC. */ |