summaryrefslogtreecommitdiff
path: root/include/charge_state.h
diff options
context:
space:
mode:
authorShawn Nematbakhsh <shawnn@chromium.org>2015-12-19 10:38:52 -0800
committerchrome-bot <chrome-bot@chromium.org>2016-01-06 18:48:11 -0800
commit0af6e77a3a90299418628a997c81436acbec242c (patch)
tree342623ba55704015efdd89515f893974471dcb5e /include/charge_state.h
parent0c8a1b8d39734eaae692eacbe04894207bb2c6da (diff)
downloadchrome-ec-0af6e77a3a90299418628a997c81436acbec242c.tar.gz
charger: Change unlocked battery level ignore conditions
x86 systems will auto-power-on when power is applied to the EC. When the battery level is critically low, power-on is prevented, except when the system is unlocked. So, when unlocked, some systems will auto-power-on regardless of battery level, overcurrent the charger / battery, and then repeat forever. Prevent this reboot loop by ignoring auto-power-up when the battery is critically low, regardless of system unlocked status. BUG=chrome-os-partner:48339 TEST=Verify power-up is prevented on no-battery chell w/ donette. Then, run 'powerbtn' on EC console and verify system powers on (and overcurrents). BRANCH=None Change-Id: Ia631b5a8c45b42ec805e4a0c3f827929a0efd236 Signed-off-by: Shawn Nematbakhsh <shawnn@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/319187 Commit-Ready: Shawn N <shawnn@chromium.org> Tested-by: Shawn N <shawnn@chromium.org> Reviewed-by: Duncan Laurie <dlaurie@chromium.org>
Diffstat (limited to 'include/charge_state.h')
-rw-r--r--include/charge_state.h5
1 files changed, 4 insertions, 1 deletions
diff --git a/include/charge_state.h b/include/charge_state.h
index 97c6ca404e..3a86bf4baf 100644
--- a/include/charge_state.h
+++ b/include/charge_state.h
@@ -96,8 +96,11 @@ int charge_want_shutdown(void);
/**
* Return non-zero if the battery level is too low to allow power on, even if
* a charger is attached.
+ *
+ * @param power_button_pressed True if the power-up attempt is caused by a
+ * power button press.
*/
-int charge_prevent_power_on(void);
+int charge_prevent_power_on(int power_button_pressed);
/**
* Get the last polled battery/charger temperature.