summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYilun Lin <yllin@google.com>2019-04-19 13:27:39 +0800
committerchrome-bot <chrome-bot@chromium.org>2019-05-12 19:27:41 -0700
commit3e2c751048cc3d4b84373b07013e7c904eb4a5d3 (patch)
treee76871c42788245385ce26ef76eaca213947fc6f
parentbe5ef157cf823126acb60aabc8595e1d8ac1b77e (diff)
downloadchrome-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.h1
-rw-r--r--driver/charger/rt946x.c9
-rw-r--r--driver/charger/rt946x.h20
-rw-r--r--include/config.h6
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.
*/