diff options
author | Alec Berg <alecaberg@chromium.org> | 2014-10-21 11:43:01 -0700 |
---|---|---|
committer | chrome-internal-fetch <chrome-internal-fetch@google.com> | 2014-10-22 00:30:35 +0000 |
commit | 89feca3eb34d1f6ef2e2a8227a0603c182afa348 (patch) | |
tree | 5aeaa15c8866ec4886f4f7e4105138f091733fd8 | |
parent | f36a859e06f10f5bb2482d827797c35c3b758cd3 (diff) | |
download | chrome-ec-89feca3eb34d1f6ef2e2a8227a0603c182afa348.tar.gz |
samus: fix false shutdown due to low battery
Fix bug causing unit to falsely shutdown due to low battery.
The shutdown warning time was not getting reset, so two false
readings of battery SOC or voltage, seperated by more than 30
seconds in time would cause "charge force shutdown due to low
battery"
BUG=chrome-os-partner:33111, chrome-os-partner:33144
BRANCH=samus
TEST=make buildall
Change-Id: I6f00187516d23aa78139e5c1565febca34176ecc
Signed-off-by: Alec Berg <alecaberg@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/224765
-rw-r--r-- | common/charge_state_v2.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/common/charge_state_v2.c b/common/charge_state_v2.c index a5d421c45b..e0ab8e5929 100644 --- a/common/charge_state_v2.c +++ b/common/charge_state_v2.c @@ -414,8 +414,14 @@ static inline int battery_too_low(void) /* Shut everything down before the battery completely dies. */ static void prevent_deep_discharge(void) { - if (!battery_too_low()) + if (!battery_too_low()) { + /* Reset shutdown warning time */ + shutdown_warning_time.val = 0; return; + } + + CPRINTS("Low battery: %d%%, %dmV", + curr.batt.state_of_charge, curr.batt.voltage); if (chipset_in_state(CHIPSET_STATE_ANY_OFF)) { #ifdef CONFIG_HIBERNATE |