diff options
author | Wai-Hong Tam <waihong@google.com> | 2020-08-06 15:56:45 -0700 |
---|---|---|
committer | Commit Bot <commit-bot@chromium.org> | 2020-08-08 01:48:32 +0000 |
commit | 1a182fd225d9a39c535058d8ce1d48a5ad1c96bc (patch) | |
tree | ece4be5f75c0490828881c28f403539553816097 /board/trogdor | |
parent | 67944274aa8b0639e3e23eacd8cf277908874d5f (diff) | |
download | chrome-ec-1a182fd225d9a39c535058d8ce1d48a5ad1c96bc.tar.gz |
sc7180: Monitor AP_RST_L from PMIC to notify HOOK_CHIPSET_RESET
The HOOK_CHIPSET_RESET should be notified when the AP resets.
In x86 platforms, EC monitors the LPC LRESET pin. This LRESET pin is
asserted when the chipset resets. However, ARM platforms don't use
LPC. We need another way to monitor AP reset.
This CL modifies the SC7180 power sequence, to monitor the AP_RST_L
signal from PMIC. PMIC uses the AP_RST_L to notify AP reset. A
complete warm reset sequence will toggle the AP_RST_L signal 3 times.
EC monitors the AP_RST_L signal and wait it transition 3 times to
notify the HOOK_CHIPSET_RESET. In case, the AP_RST_L is not toggled
3 times, still notifies the hook but prints a warning message.
BRANCH=None
BUG=b:163078082
TEST=Checked the HOOK_CHIPSET_RESET is notified after AP warm reset.
Change-Id: I4e7b0f0d266e01526deaf54afcdfd2ac1037b8f6
Signed-off-by: Wai-Hong Tam <waihong@google.com>
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2343753
Reviewed-by: Stephen Boyd <swboyd@chromium.org>
Diffstat (limited to 'board/trogdor')
-rw-r--r-- | board/trogdor/gpio.inc | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/board/trogdor/gpio.inc b/board/trogdor/gpio.inc index ef93c3b25e..e8b560f9a6 100644 --- a/board/trogdor/gpio.inc +++ b/board/trogdor/gpio.inc @@ -24,7 +24,7 @@ GPIO_INT(EC_VOLDN_BTN_ODL, PIN(7, 0), GPIO_INT_BOTH | GPIO_PULL_UP, button_inte GPIO_INT(EC_VOLUP_BTN_ODL, PIN(F, 2), GPIO_INT_BOTH | GPIO_PULL_UP, button_interrupt) /* Volume Down button */ GPIO_INT(EC_WP_ODL, PIN(A, 1), GPIO_INT_BOTH, switch_interrupt) /* Write protection */ GPIO_INT(LID_OPEN_EC, PIN(D, 2), GPIO_INT_BOTH | GPIO_HIB_WAKE_HIGH, lid_interrupt) /* Lid open? */ -GPIO_INT(AP_RST_L, PIN(C, 1), GPIO_INT_BOTH | GPIO_SEL_1P8V, power_signal_interrupt) /* PMIC to signal AP reset */ +GPIO_INT(AP_RST_L, PIN(C, 1), GPIO_INT_BOTH | GPIO_SEL_1P8V, chipset_ap_rst_interrupt) /* PMIC to signal AP reset */ GPIO_INT(PS_HOLD, PIN(A, 4), GPIO_INT_BOTH | GPIO_PULL_DOWN | GPIO_SEL_1P8V, power_signal_interrupt) /* Indicate when AP triggers reset/shutdown */ GPIO_INT(PMIC_FAULT_L, PIN(A, 3), GPIO_INT_BOTH | GPIO_SEL_1P8V, power_signal_interrupt) /* Any PMIC fault? */ GPIO_INT(AP_SUSPEND, PIN(5, 7), GPIO_INT_BOTH | GPIO_SEL_1P8V, power_signal_interrupt) /* Suspend signal from PMIC */ |