summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlec Berg <alecaberg@chromium.org>2014-10-21 11:43:01 -0700
committerchrome-internal-fetch <chrome-internal-fetch@google.com>2014-10-22 00:30:35 +0000
commit89feca3eb34d1f6ef2e2a8227a0603c182afa348 (patch)
tree5aeaa15c8866ec4886f4f7e4105138f091733fd8
parentf36a859e06f10f5bb2482d827797c35c3b758cd3 (diff)
downloadchrome-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.c8
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