blob: 3b4a8fb6a4976e0b3a824779a302a6162f7ac9b3 [file] [log] [blame]
From 2c91c86361d2ad5031ceaadf6cec1dc843c33dad Mon Sep 17 00:00:00 2001
From: Kane Chen <kane.chen@intel.com>
Date: Tue, 11 Aug 2020 03:39:51 +0000
Subject: [PATCH] Reland "CHROMIUM: x86: add delay after acpi_reboot"
This reverts commit 92309a017ddcef4e71b24189e7ff99540df442d9.
Reason for revert:
On Delbin, we are seeing 2 consecutive reboot was sent to PCH side
and it causes system hangs up.
One is by 0xcf9 another one is SYS_RESET# low pull by EC.
it's observed by EC log `chipset_reset: 5` when we reboot the dut.
By adding some delay, I can't see kernel use io port 0x64 to ask EC
to pull SYS_RESET#.
it proves the 0xcf9 sometimes takes more time to reboot the system.
We are still debugging this issue.
As a temporarily WA, we still need the delay after acpi_reboot.
BUG=b:161202455
TEST=pass 200 warm reset on Delbin.
Original change's description:
> Revert "CHROMIUM: x86: add delay after acpi_reboot"
>
> This reverts commit 8220e955f7c0d6ecac81a7e81eaa903fddeb8155.
>
> Per rebase comments and comments in the patch decription,
> this patch is no longer needed.
>
> BUG=chromium:1006306
> TEST=warm reset test on chromebooks running chromeos-5.4
>
> Change-Id: I32cd8d805b7647bf53d52decfa3f218fb6358edd
> Signed-off-by: Guenter Roeck <groeck@chromium.org>
> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/kernel/+/1986107
> Reviewed-by: Jesse Barnes <jsbarnes@google.com>
Change-Id: I31eede504d5153c326f41b0088f3e4eec2b760d6
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/kernel/+/2345993
Reviewed-by: Alex Levin <levinale@google.com>
Reviewed-by: Guenter Roeck <groeck@chromium.org>
Reviewed-by: Sukumar Ghorai <sukumar.ghorai@intel.com>
Tested-by: Kane Chen <kane.chen@intel.corp-partner.google.com>
Commit-Queue: Anson Tseng <ansontseng@google.com>
Commit-Queue: Alex Levin <levinale@google.com>
---
arch/x86/kernel/reboot.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/arch/x86/kernel/reboot.c b/arch/x86/kernel/reboot.c
index fa700b46588e..9bbbc85c3213 100644
--- a/arch/x86/kernel/reboot.c
+++ b/arch/x86/kernel/reboot.c
@@ -612,6 +612,7 @@ static void native_machine_emergency_restart(void)
switch (reboot_type) {
case BOOT_ACPI:
acpi_reboot();
+ mdelay(15);
reboot_type = BOOT_KBD;
break;
--
2.17.1