diff options
author | Nicolas Boichat <drinkcat@chromium.org> | 2019-02-22 15:36:51 +0800 |
---|---|---|
committer | chrome-bot <chrome-bot@chromium.org> | 2019-03-12 18:54:16 -0700 |
commit | b364bd251f0d867b2796cbe9fd9160662d0f7ad3 (patch) | |
tree | 3d111788a8488fc5058a83f612e1221d413fdcdd /driver/charger | |
parent | 1d68cfe1a301ca326cbdcc8758df662407e204c7 (diff) | |
download | chrome-ec-b364bd251f0d867b2796cbe9fd9160662d0f7ad3.tar.gz |
kukui: Enable MT6370 DB_POSVOUT/DB_NEGVOUT
BRANCH=none
BUG=b:123669273
TEST=Boot kukui P2, panel AVDD/AVEE looks good
Change-Id: Ie9b8780fdad6e061e967ebb127b27bf63a11db2f
Signed-off-by: Yilun Lin <yllin@google.com>
Reviewed-on: https://chromium-review.googlesource.com/1482633
Commit-Ready: ChromeOS CL Exonerator Bot <chromiumos-cl-exonerator@appspot.gserviceaccount.com>
Tested-by: Nicolas Boichat <drinkcat@chromium.org>
Reviewed-by: Nicolas Boichat <drinkcat@chromium.org>
Diffstat (limited to 'driver/charger')
-rw-r--r-- | driver/charger/rt946x.c | 7 | ||||
-rw-r--r-- | driver/charger/rt946x.h | 19 |
2 files changed, 26 insertions, 0 deletions
diff --git a/driver/charger/rt946x.c b/driver/charger/rt946x.c index 35fb6fcb15..9a69f3847a 100644 --- a/driver/charger/rt946x.c +++ b/driver/charger/rt946x.c @@ -1019,6 +1019,13 @@ int mt6370_set_ldo_voltage(int mv) return rt946x_update_bits(MT6370_REG_LDOVOUT, vout_mask, vout_val); } +/* MT6370 Display bias */ +int mt6370_db_external_control(int en) +{ + return rt946x_update_bits(MT6370_REG_DBCTRL1, MT6370_MASK_DB_EXT_EN, + en << MT6370_SHIFT_DB_EXT_EN); +} + /* MT6370 RGB LED */ int mt6370_led_set_dim_mode(enum mt6370_led_index index, diff --git a/driver/charger/rt946x.h b/driver/charger/rt946x.h index d91def7b4c..b28a87f3f5 100644 --- a/driver/charger/rt946x.h +++ b/driver/charger/rt946x.h @@ -135,6 +135,9 @@ #define MT6370_REG_RGBCHRINDDIM 0x92 #define MT6370_REG_RGBCHRINDCTRL 0x93 +/* Display bias */ +#define MT6370_REG_DBCTRL1 0XB0 + #define RT946X_REG_DPDMIRQ 0xC6 /* backlight */ #define MT6370_BACKLIGHT_BLEN 0xA0 @@ -477,6 +480,19 @@ #define MT6370_MASK_RGBISNK_CURSEL (0x7 << MT6370_SHIFT_RGBISNK_CURSEL) #define MT6370_MASK_RGBISNK_DIMFSEL (0x7 << MT6370_SHIFT_RGBISNK_DIMFSEL) +/* ========== DBCTRL1 (mt6370) ============ */ +#define MT6370_SHIFT_DB_EXT_EN 0 +#define MT6370_SHIFT_DB_PERIODIC_FIX 4 +#define MT6370_SHIFT_DB_SINGLE_PIN 5 +#define MT6370_SHIFT_DB_FREQ_PM 6 +#define MT6370_SHIFT_DB_PERIODIC_MODE 7 + +#define MT6370_MASK_DB_EXT_EN 1 +#define MT6370_MASK_DB_PERIODIC_FIX 1 +#define MT6370_MASK_DB_SINGLE_PIN 1 +#define MT6370_MASK_DB_FREQ_PM 1 +#define MT6370_MASK_DB_PERIODIC_MODE 1 + /* ========== CHGSTAT2 0xD1 (mt6370) ============ */ #ifdef CONFIG_CHARGER_MT6370 #define MT6370_SHIFT_CHG_VBUSOV_STAT 7 @@ -567,6 +583,9 @@ enum mt6370_led_pwm_freq { MT6370_LED_PWM_FREQ1000 = 7 /* 1000 Hz */ }; +/* Enable display bias external pin control. */ +int mt6370_db_external_control(int en); + /* Set LED brightness */ int mt6370_led_set_brightness(enum mt6370_led_index index, uint8_t brightness); |