summaryrefslogtreecommitdiff
path: root/power
diff options
context:
space:
mode:
authorWai-Hong Tam <waihong@google.com>2018-08-13 14:05:17 -0700
committerchrome-bot <chrome-bot@chromium.org>2018-08-31 05:22:51 -0700
commit1c2206858913b12b64db7df6de2fe95a1737e31e (patch)
tree1382d5d60806eea2965473d0629582a9c0e76932 /power
parent224667711a684241ef24cc3338b112097b10eba4 (diff)
downloadchrome-ec-1c2206858913b12b64db7df6de2fe95a1737e31e.tar.gz
cheza: Disable interrupts which are floating when switchcap off
The power signals, AP_RST_L and PMIC_FAULT_L, are floating when switchcap off. Disable their interrupts. The PS_HOLD and POWER_GOOD should be OK as they have pull-down. BRANCH=none BUG=b:78455067 TEST=Checked "power on", "power off", "apshutdown", and "apreset". Change-Id: I17e4c7e8f82e950b52d750961f4b5efc01c18ccf Signed-off-by: Wai-Hong Tam <waihong@google.com> Reviewed-on: https://chromium-review.googlesource.com/1180066 Reviewed-by: Stephen Boyd <swboyd@chromium.org>
Diffstat (limited to 'power')
-rw-r--r--power/sdm845.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/power/sdm845.c b/power/sdm845.c
index 81c18fb804..5b59e8cab9 100644
--- a/power/sdm845.c
+++ b/power/sdm845.c
@@ -384,6 +384,10 @@ static void power_off(void)
/* Do a graceful way to shutdown PMIC/AP first */
set_pmic_pwron(0);
+ /* Disable signal interrupts, as they are floating when switchcap off */
+ power_signal_disable_interrupt(GPIO_AP_RST_L);
+ power_signal_disable_interrupt(GPIO_PMIC_FAULT_L);
+
/* Force to switch off all rails */
set_system_power(0);
@@ -452,6 +456,11 @@ static void power_on(void)
set_system_power(1);
usleep(SYSTEM_POWER_ON_DELAY);
+
+ /* Enable signal interrupts */
+ power_signal_enable_interrupt(GPIO_AP_RST_L);
+ power_signal_enable_interrupt(GPIO_PMIC_FAULT_L);
+
set_pmic_pwron(1);
disable_sleep(SLEEP_MASK_AP_RUN);