summaryrefslogtreecommitdiff
path: root/baseboard/octopus
diff options
context:
space:
mode:
Diffstat (limited to 'baseboard/octopus')
-rw-r--r--baseboard/octopus/baseboard.c14
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);