diff options
author | Peter Marheine <pmarheine@chromium.org> | 2019-12-23 15:14:07 +1100 |
---|---|---|
committer | Commit Bot <commit-bot@chromium.org> | 2019-12-31 04:43:34 +0000 |
commit | 76f1cb778934bf14ffb830a8983f339b323f8b48 (patch) | |
tree | 5e47858c3a8935b3a864ae389823987075fa336c /power/cometlake-discrete.c | |
parent | 14a1dcc4325e062a61f77df67c24c81c4dd13cd3 (diff) | |
download | chrome-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.c | 5 |
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); |