summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBruce <Bruce.Wan@quantatw.com>2017-02-24 19:39:33 +0800
committerChromeOS Commit Bot <chromeos-commit-bot@chromium.org>2017-03-13 15:21:14 +0000
commit60f0d38743c348ec266fa8e7b5638713c945ba64 (patch)
tree54edf0946b52df7203b26f2ad183867dc72c210a
parent52259a2eaf085adbc219a4820cb339d6bce4c576 (diff)
downloadchrome-ec-60f0d38743c348ec266fa8e7b5638713c945ba64.tar.gz
charger/bd9995x: enable IADP bit when charger init.
When plug in adapter with dead battery, the charger will be flow back to the adapter. Then adapter will OVP. Enable IADP bit at address 0x40(BD9995X_CMD_VM_CTRL_SET) when charger init. It will fix this phenomenon. Enable IADP pin current limit due to we've already deployed the clearing to existing. BUG=chrome-os-partner:62646, 61691 BRANCH=reef TEST=check charger don't flow back to adapter with dead battery Change-Id: Id6202f3dd51cb7e1c43a124660e09de39f6c041b Signed-off-by: Daisuke Nojiri <dnojiri@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/453399 Reviewed-by: Shawn N <shawnn@chromium.org>
-rw-r--r--driver/charger/bd9995x.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/driver/charger/bd9995x.c b/driver/charger/bd9995x.c
index df69f348e8..7e83676e7b 100644
--- a/driver/charger/bd9995x.c
+++ b/driver/charger/bd9995x.c
@@ -796,11 +796,12 @@ static void bd9995x_init(void)
ch_raw_write16(BD9995X_CMD_CHGOP_SET2, reg,
BD9995X_EXTENDED_COMMAND);
- /* Disable IADP pin current limit */
+ /* IADP monitoring is enabled by default but since we've deployed RO
+ * which clears it we need to enforce the default setting. */
if (ch_raw_read16(BD9995X_CMD_VM_CTRL_SET, &reg,
BD9995X_EXTENDED_COMMAND))
return;
- reg &= ~BD9995X_CMD_VM_CTRL_SET_EXTIADPEN;
+ reg |= BD9995X_CMD_VM_CTRL_SET_EXTIADPEN;
ch_raw_write16(BD9995X_CMD_VM_CTRL_SET, reg,
BD9995X_EXTENDED_COMMAND);