summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorShawn Nematbakhsh <shawnn@chromium.org>2016-06-24 12:42:30 -0700
committerchrome-bot <chrome-bot@chromium.org>2016-06-28 14:37:14 -0700
commitbc49870ed16ecd9de4cc42601fcf34d0e40f8d44 (patch)
tree918f586d36eb03baaccbc72a3dc1fe3f3ae44b45
parent4cdd14d07b5a9abb402cb4d33c2031abde6a5a53 (diff)
downloadchrome-ec-bc49870ed16ecd9de4cc42601fcf34d0e40f8d44.tar.gz
bd99955: Enforce minimum input current of 512 mA
Lower input current limits can cause back-boosting in some cases. BUG=chrome-os-partner:54778 BRANCH=None TEST=Manual on reef. Plug multiple chargers, verify ilim doesn't drop below 512 mA and back-boosting does not occur. Change-Id: Ia019fe52d75a9a37177605ceda473d338fd87fc3 Signed-off-by: Shawn Nematbakhsh <shawnn@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/356161 Commit-Ready: Shawn N <shawnn@chromium.org> Tested-by: Shawn N <shawnn@chromium.org> Reviewed-by: Vijay P Hiremath <vijay.p.hiremath@intel.com> Reviewed-by: David Hendricks <dhendrix@chromium.org>
-rw-r--r--driver/charger/bd99955.c4
-rw-r--r--driver/charger/bd99955.h2
2 files changed, 5 insertions, 1 deletions
diff --git a/driver/charger/bd99955.c b/driver/charger/bd99955.c
index 4ad95cc3eb..7e76e54be6 100644
--- a/driver/charger/bd99955.c
+++ b/driver/charger/bd99955.c
@@ -401,6 +401,10 @@ int charger_set_input_current(int input_current)
/* Input current step 32 mA */
input_current &= ~0x1F;
+
+ if (input_current < bd99955_charger_info.input_current_min)
+ input_current = bd99955_charger_info.input_current_min;
+
rv = ch_raw_write16(BD99955_CMD_IBUS_LIM_SET, input_current,
BD99955_BAT_CHG_COMMAND);
if (rv)
diff --git a/driver/charger/bd99955.h b/driver/charger/bd99955.h
index 86f438553c..f6ef29a2c6 100644
--- a/driver/charger/bd99955.h
+++ b/driver/charger/bd99955.h
@@ -36,7 +36,7 @@ enum bd99955_charge_port {
#define CHARGE_I_OFF 0
#define CHARGE_I_STEP 64
#define INPUT_I_MAX 16352
-#define INPUT_I_MIN 0
+#define INPUT_I_MIN 512
#define INPUT_I_STEP 32
/* Battery Charger Commands */