summaryrefslogtreecommitdiff
path: root/power/cometlake-discrete.c
diff options
context:
space:
mode:
authorPeter Marheine <pmarheine@chromium.org>2019-12-23 15:14:07 +1100
committerCommit Bot <commit-bot@chromium.org>2019-12-31 04:43:34 +0000
commit76f1cb778934bf14ffb830a8983f339b323f8b48 (patch)
tree5e47858c3a8935b3a864ae389823987075fa336c /power/cometlake-discrete.c
parent14a1dcc4325e062a61f77df67c24c81c4dd13cd3 (diff)
downloadchrome-ec-76f1cb778934bf14ffb830a8983f339b323f8b48.tar.gz
puff: prevent AP boot when there isn't enough power
The common x86 state machine does this, but the EC-controlled sequencing did not. Since trying to boot the AP without enough power will cause the system to brown out, we need to do it too. TEST=boot prevented on hardware BRANCH=none BUG=b:146515963 Change-Id: I7dbe6ab962fbe47d4d866be98d4174291c757c72 Signed-off-by: Peter Marheine <pmarheine@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1980104 Reviewed-by: Andrew McRae <amcrae@chromium.org>
Diffstat (limited to 'power/cometlake-discrete.c')
-rw-r--r--power/cometlake-discrete.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/power/cometlake-discrete.c b/power/cometlake-discrete.c
index 5ab923499c..94b4723d33 100644
--- a/power/cometlake-discrete.c
+++ b/power/cometlake-discrete.c
@@ -286,6 +286,11 @@ enum power_state power_handle_state(enum power_state state)
switch (state) {
case POWER_G3S5:
+ if (intel_x86_wait_power_up_ok() != EC_SUCCESS) {
+ chipset_force_shutdown(
+ CHIPSET_SHUTDOWN_BATTERY_INHIBIT);
+ return POWER_G3;
+ }
/* Power-up steps 2a-2h. */
#ifdef CONFIG_POWER_PP5000_CONTROL
power_5v_enable(task_get_current(), 1);