summaryrefslogtreecommitdiff
path: root/board
diff options
context:
space:
mode:
authorDavid Huang <david.huang@quanta.corp-partner.google.com>2020-01-22 09:57:42 +0800
committerCommit Bot <commit-bot@chromium.org>2020-02-07 12:25:28 +0000
commit4ffdafcff838b09bbbdea8c1bdfdaacd10d9be8a (patch)
tree78177b8aae17d36c56890910c794bf118d0ca4f1 /board
parentf42be6e2a1eefaee06ed7593373fbe6dedb3dd6c (diff)
downloadchrome-ec-4ffdafcff838b09bbbdea8c1bdfdaacd10d9be8a.tar.gz
Kindred: Fix reset trigger even system force to G3.
System will trigger reset when already force to G3. Add board_chipset_forced_shutdown() in chipset_force_shutdown to stop reset when system force to G3. BUG=b:143440730 BRANCH=master TEST=Power on system and make system enter G3 immediately. Make sure system won't reset. Change-Id: Ie601921af9adf08d2055cdecb0243e64bd57724f Signed-off-by: David Huang <David.Huang@quantatw.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2014001 Tested-by: David Huang <david.huang@quanta.corp-partner.google.com> Commit-Queue: David Huang <david.huang@quanta.corp-partner.google.com> Reviewed-by: Tim Wawrzynczak <twawrzynczak@chromium.org>
Diffstat (limited to 'board')
-rw-r--r--board/kindred/board.c11
1 files changed, 4 insertions, 7 deletions
diff --git a/board/kindred/board.c b/board/kindred/board.c
index 99fbc47943..8c768e2575 100644
--- a/board/kindred/board.c
+++ b/board/kindred/board.c
@@ -49,7 +49,6 @@
static void check_reboot_deferred(void);
DECLARE_DEFERRED(check_reboot_deferred);
-static int system_in_resume_state = 0;
/* GPIO to enable/disable the USB Type-A port. */
const int usb_port_enable[CONFIG_USB_PORT_POWER_SMART_PORT_COUNT] = {
@@ -484,19 +483,17 @@ __override uint32_t board_override_feature_flags0(uint32_t flags0)
void all_sys_pgood_check_reboot(void)
{
- system_in_resume_state = 1;
hook_call_deferred(&check_reboot_deferred_data, 3000 * MSEC);
}
-static void all_sys_pgood_reset_reboot(void)
+__override void board_chipset_forced_shutdown(void)
{
- system_in_resume_state = 0;
+ hook_call_deferred(&check_reboot_deferred_data, -1);
}
-DECLARE_HOOK(HOOK_CHIPSET_SHUTDOWN, all_sys_pgood_reset_reboot, HOOK_PRIO_DEFAULT);
+DECLARE_HOOK(HOOK_CHIPSET_SHUTDOWN, board_chipset_forced_shutdown, HOOK_PRIO_DEFAULT);
static void check_reboot_deferred(void)
{
- if (!gpio_get_level(GPIO_PG_EC_ALL_SYS_PWRGD) && system_in_resume_state == 1) {
+ if (!gpio_get_level(GPIO_PG_EC_ALL_SYS_PWRGD))
system_reset(SYSTEM_RESET_MANUALLY_TRIGGERED);
- }
}