summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJacky Wang <jacky5_wang@pegatron.corp-partner.google.com>2021-02-04 18:36:33 +0800
committerCommit Bot <commit-bot@chromium.org>2021-02-09 17:17:19 +0000
commit235049a12b076633ded04712fcc1bce29ec1372a (patch)
treea6d0de5301d2cafb24882f70ddcab2ad3a039ee4
parent5ce78e2a073e0f7984c5f8b7865c5c6c3e41340c (diff)
downloadchrome-ec-235049a12b076633ded04712fcc1bce29ec1372a.tar.gz
icelake : fix power sequence behavior
Remove powerok signal checking the current GPIO level step. We found the GPIO_EC_AP_PCH_PWROK_OD did not setting to low when system shutdown. The signal EC_AP_PCH_PWROK_OD is connect with signal IMVP9_VRDAY_OD. The gpio_get_level get GPIO status from the EC register GPDMR and gpio_set_level set GPIO level by EC register GPDR. If signal IMVP9_VRDAY_OD is low, the EC GPDRM will read EC_AP_PCH_PWROK_OD status is low even the GPDR is set to High. We remove the signal status check to make sure power sequence is expected. BUG=b:171450533 BRANCH=firmware-dedede-13606.B TEST=BOARD=galtic Check system can power on. Signed-off-by: Jacky Wang <jacky5_wang@pegatron.corp-partner.google.com> Change-Id: Ia8d8c096b15c09644432736df5ca5fc10d91c954 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2675322 Reviewed-by: Michael5 Chen <michael5_chen1@pegatron.corp-partner.google.com> Reviewed-by: Aseda Aboagye <aaboagye@chromium.org> Commit-Queue: Aseda Aboagye <aaboagye@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2681295 Reviewed-by: Abe Levkoy <alevkoy@chromium.org> Commit-Queue: Abe Levkoy <alevkoy@chromium.org> Tested-by: Abe Levkoy <alevkoy@chromium.org>
-rw-r--r--power/icelake.c17
1 files changed, 0 insertions, 17 deletions
diff --git a/power/icelake.c b/power/icelake.c
index 3d1242b9a0..c47f44c146 100644
--- a/power/icelake.c
+++ b/power/icelake.c
@@ -189,19 +189,6 @@ static void dsw_pwrok_pass_thru(void)
}
/*
- * Return 0 if PWROK signal is deasserted, non-zero if asserted
- */
-static int pwrok_signal_get(const struct intel_x86_pwrok_signal *signal)
-{
- int level = gpio_get_level(signal->gpio);
-
- if (signal->active_low)
- level = !level;
-
- return level;
-}
-
-/*
* Set the PWROK signal state
*
* &param level 0 deasserts the signal, other values assert the signal
@@ -236,10 +223,6 @@ static void all_sys_pwrgd_pass_thru(void)
* to match the current ALL_SYS_PWRGD input.
*/
for (i = 0; i < signal_count; i++, pwrok_signal++) {
- if ((!all_sys_pwrgd_in && !pwrok_signal_get(pwrok_signal))
- || (all_sys_pwrgd_in && pwrok_signal_get(pwrok_signal)))
- continue;
-
if (pwrok_signal->delay_ms > 0)
msleep(pwrok_signal->delay_ms);