summaryrefslogtreecommitdiff
path: root/driver/charger/rt946x.h
diff options
context:
space:
mode:
authorYilun Lin <yllin@google.com>2018-07-23 14:02:56 +0800
committerchrome-bot <chrome-bot@chromium.org>2018-07-24 06:36:05 -0700
commit8ff9198bb10722481139a2e540d76789f8404d36 (patch)
tree0a16171ae3c4c9bdeb54af1aa4837b9ce2702e1d /driver/charger/rt946x.h
parent95a30548abfebfaac38e621ac124dc2197ded6fc (diff)
downloadchrome-ec-8ff9198bb10722481139a2e540d76789f8404d36.tar.gz
charger/mt6370: Support set LDO voltage function.
TEST=flash kukui and manually test on kukui p0. BUG=b:80160408 BRANCH=None Change-Id: I2be4bda585babd0afe6e64837904898d46115e54 Signed-off-by: Yilun Lin <yllin@google.com> Reviewed-on: https://chromium-review.googlesource.com/1146418 Commit-Ready: Yilun Lin <yllin@chromium.org> Tested-by: Yilun Lin <yllin@chromium.org> Reviewed-by: Nicolas Boichat <drinkcat@chromium.org>
Diffstat (limited to 'driver/charger/rt946x.h')
-rw-r--r--driver/charger/rt946x.h26
1 files changed, 26 insertions, 0 deletions
diff --git a/driver/charger/rt946x.h b/driver/charger/rt946x.h
index d82d6e8e6d..16ba9ff823 100644
--- a/driver/charger/rt946x.h
+++ b/driver/charger/rt946x.h
@@ -118,6 +118,8 @@
#define RT946X_REG_CHGNTC 0X4B
#define RT946X_REG_ADCDATAH 0X4C
#define RT946X_REG_ADCDATAL 0X4D
+#define MT6370_REG_LDOCFG 0X80
+#define MT6370_REG_LDOVOUT 0X81
/* RGB led */
#define MT6370_REG_RGBDIM_BASE 0x81
#define MT6370_REG_RGB1DIM 0x82
@@ -206,6 +208,11 @@
#define RT946X_BATTEMP_COLD 0x05
#define RT946X_BATTEMP_HOT 0x06
+/* LDO voltage */
+#define MT6370_LDO_MIN 1600
+#define MT6370_LDO_MAX 4000
+#define MT6370_LDO_STEP 200
+
/* ========== CORECTRL0 0x00 ============ */
#define RT946X_SHIFT_RST 7
@@ -379,6 +386,19 @@
#define RT946X_MASK_DPDMIRQ_ATTACH (1 << RT946X_SHIFT_DPDMIRQ_ATTACH)
#endif
+
+/* ========== LDOCFG 0x80 (mt6370) ============ */
+#define MT6370_SHIFT_LDOCFG_OMS 6
+
+#define MT6370_MASK_LDOCFG_OMS (1 << MT6370_SHIFT_LDOCFG_OMS)
+
+/* ========== LDOVOUT 0x81 (mt6370) ============ */
+#define MT6370_SHIFT_LDOVOUT_EN 7
+#define MT6370_SHIFT_LDOVOUT_VOUT 0
+
+#define MT6370_MASK_LDOVOUT_EN (1 << MT6370_SHIFT_LDOVOUT_EN)
+#define MT6370_MASK_LDOVOUT_VOUT (0xf << MT6370_SHIFT_LDOVOUT_VOUT)
+
/* ========== RGBDIM 0x82/0x83/0x84 (mt6370) ============ */
#define MT6370_LED_PWM_DIMDUTY_MIN 0x00
#define MT6370_LED_PWM_DIMDUTY_MAX 0x1f
@@ -467,6 +487,12 @@ int rt946x_enable_charge_termination(int en);
#ifdef CONFIG_CHARGER_MT6370
+/*
+ * Set LDO voltage.
+ * Disable LDO if voltage is zero.
+ */
+int mt6370_set_ldo_voltage(int mv);
+
enum mt6370_led_index {
MT6370_LED_ID_OFF = 0,
MT6370_LED_ID1 = 1,