diff options
Diffstat (limited to 'baseboard/octopus')
-rw-r--r-- | baseboard/octopus/baseboard.c | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/baseboard/octopus/baseboard.c b/baseboard/octopus/baseboard.c index ceb32868a0..2577dbaf1a 100644 --- a/baseboard/octopus/baseboard.c +++ b/baseboard/octopus/baseboard.c @@ -166,6 +166,20 @@ DECLARE_HOOK(HOOK_CHIPSET_SHUTDOWN, baseboard_chipset_shutdown, /* Called by APL power state machine when transitioning to G3. */ void chipset_do_shutdown(void) { +#ifdef VARIANT_OCTOPUS_EC_ITE8320 + /* + * We want the processor to be reset before dropping the PP3300_A rail + * below, otherwise the PP3300_LDO and PP3300_EC rails can be overloaded + */ + if (gpio_get_level(GPIO_PCH_SLP_S4_L)) { + /* assert RSMRST to PCH */ + gpio_set_level(GPIO_PCH_RSMRST_L, 0); + /* Wait SLP_S4 goes low; would rather watchdog than continue */ + while (gpio_get_level(GPIO_PCH_SLP_S4_L)) + ; + } +#endif + /* Disable PMIC */ gpio_set_level(GPIO_PMIC_EN, 0); |