diff options
author | Philip Chen <philipchen@google.com> | 2017-07-16 16:58:43 -0700 |
---|---|---|
committer | chrome-bot <chrome-bot@chromium.org> | 2017-07-27 00:40:48 -0700 |
commit | 381fc5912c6b528c5dbc4509feeade07a1332694 (patch) | |
tree | 2e81f1b83303bad9bc40fff5c5117d4441b806b8 /driver/charger/rt946x.h | |
parent | d703859ba06d29f9c8ccf5fae07449139432a51c (diff) | |
download | chrome-ec-381fc5912c6b528c5dbc4509feeade07a1332694.tar.gz |
charger/rt946x: Add chip-specific interface functions
Add rt946x_enable_charger_boost() to
enable/disable rt946x.
Add rt946x_is_vbus_ready() to
check if VBUS is ready.
Add rt946x_cutoff_battery to
cutoff battery.
BUG=chromium:736821
BRANCH=none
TEST=build scarlet when rt946x driver is used
Change-Id: I61b07ca0925f5ba2c71fe8033a3a496fe00869d9
Signed-off-by: Philip Chen <philipchen@google.com>
Reviewed-on: https://chromium-review.googlesource.com/573584
Commit-Ready: Philip Chen <philipchen@chromium.org>
Tested-by: Philip Chen <philipchen@chromium.org>
Reviewed-by: Aseda Aboagye <aaboagye@chromium.org>
Reviewed-by: Shawn N <shawnn@chromium.org>
Diffstat (limited to 'driver/charger/rt946x.h')
-rw-r--r-- | driver/charger/rt946x.h | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/driver/charger/rt946x.h b/driver/charger/rt946x.h index 0a18ac7acc..9341f52246 100644 --- a/driver/charger/rt946x.h +++ b/driver/charger/rt946x.h @@ -134,9 +134,11 @@ #define RT946X_MASK_HZ_EN (1 << RT946X_SHIFT_HZ_EN) /* ========== CHGCTRL2 0x02 ============ */ +#define RT946X_SHIFT_SHIP_MODE 7 #define RT946X_SHIFT_ILMTSEL 2 #define RT946X_SHIFT_CHG_EN 0 +#define RT946X_MASK_SHIP_MODE (1 << RT946X_SHIFT_SHIP_MODE) #define RT946X_MASK_ILMTSEL 0x0C #define RT946X_MASK_CHG_EN (1 << RT946X_SHIFT_CHG_EN) @@ -213,6 +215,11 @@ #define RT946X_MASK_BATNTC_FAULT 0x70 +/* ========== CHGSTATC 0x50 ============ */ +#define RT946X_SHIFT_PWR_RDY 7 + +#define RT946X_MASK_PWR_RDY (1 << RT946X_SHIFT_PWR_RDY) + /* ========== CHGFAULT 0x51 ============ */ #define RT946X_SHIFT_CHG_VSYSUV 4 #define RT946X_SHIFT_CHG_VSYSOV 5 @@ -237,4 +244,21 @@ #define RT946X_ADDR (0x5B << 1) #endif +/* RT946x specific interface functions */ + +/* Enable/Disable rt946x (in charger or boost mode) */ +int rt946x_enable_charger_boost(int en); + +/* + * Return 1 if VBUS is ready, which means + * UVLO < VBUS < VOVP && VBUS > BATS + VSLP + */ +int rt946x_is_vbus_ready(void); + +/* + * Cut off the battery (force BATFET to turn off). + * Return 0 if it succeeds. + */ +int rt946x_cutoff_battery(void); + #endif /* __CROS_EC_RT946X_H */ |