diff options
author | Shawn Nematbakhsh <shawnn@chromium.org> | 2016-05-31 18:16:00 -0700 |
---|---|---|
committer | chrome-bot <chrome-bot@chromium.org> | 2016-06-01 18:16:03 -0700 |
commit | 0b55308198bb0833ae99eeb71facf470daffe596 (patch) | |
tree | 6c23fe89c291fce031a579cf72b53ca2589f8ccd /driver | |
parent | 1242805ba54daba82cfe79b732ac82c530e4fd57 (diff) | |
download | chrome-ec-0b55308198bb0833ae99eeb71facf470daffe596.tar.gz |
bd99955: Clear IADP enable bit on init
After the EC is powered, we are no longer concerned with the
IADP-selected current limit, so disable IADP measurement. On some
platforms, this prevents IADP from interfering with register-selected
current limits.
BUG=chrome-os-partner:53693
BRANCH=None
TEST=Verify reef selects a new input current limit when external charger
is plugged.
Change-Id: I1acadc03e3c978368dc96fd478970960106c18fb
Signed-off-by: Shawn Nematbakhsh <shawnn@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/348520
Commit-Ready: Shawn N <shawnn@chromium.org>
Tested-by: Shawn N <shawnn@chromium.org>
Reviewed-by: David Hendricks <dhendrix@chromium.org>
Reviewed-by: Rachel Nancollas <rachelsn@google.com>
Diffstat (limited to 'driver')
-rw-r--r-- | driver/charger/bd99955.c | 8 | ||||
-rw-r--r-- | driver/charger/bd99955.h | 1 |
2 files changed, 9 insertions, 0 deletions
diff --git a/driver/charger/bd99955.c b/driver/charger/bd99955.c index 6953592fb1..77923f5bbb 100644 --- a/driver/charger/bd99955.c +++ b/driver/charger/bd99955.c @@ -549,6 +549,14 @@ static void bd99995_init(void) ch_raw_write16(BD99955_CMD_VBATOVP_SET, (bi->voltage_max + 500) & 0x7ff0, BD99955_EXTENDED_COMMAND); + + /* Disable IADP pin current limit */ + if (ch_raw_read16(BD99955_CMD_VM_CTRL_SET, ®, + BD99955_EXTENDED_COMMAND)) + return; + reg &= ~BD99955_CMD_VM_CTRL_SET_EXTIADPEN; + ch_raw_write16(BD99955_CMD_VM_CTRL_SET, reg, + BD99955_EXTENDED_COMMAND); } DECLARE_HOOK(HOOK_INIT, bd99995_init, HOOK_PRIO_INIT_EXTPOWER); diff --git a/driver/charger/bd99955.h b/driver/charger/bd99955.h index 7deae54b09..c03c349935 100644 --- a/driver/charger/bd99955.h +++ b/driver/charger/bd99955.h @@ -183,6 +183,7 @@ enum bd99955_charge_port { #define BD99955_CMD_EXT_PROTECT_SET 0x3E #define BD99955_CMD_EXT_MAP_SET 0x3F #define BD99955_CMD_VM_CTRL_SET 0x40 +#define BD99955_CMD_VM_CTRL_SET_EXTIADPEN (1 << 9) #define BD99955_CMD_THERM_WINDOW_SET1 0x41 #define BD99955_CMD_THERM_WINDOW_SET2 0x42 #define BD99955_CMD_THERM_WINDOW_SET3 0x43 |