diff options
-rw-r--r-- | baseboard/dragonegg/baseboard.h | 1 | ||||
-rw-r--r-- | power/icelake.c | 14 |
2 files changed, 15 insertions, 0 deletions
diff --git a/baseboard/dragonegg/baseboard.h b/baseboard/dragonegg/baseboard.h index c467697560..10f037e48d 100644 --- a/baseboard/dragonegg/baseboard.h +++ b/baseboard/dragonegg/baseboard.h @@ -20,6 +20,7 @@ #define CONFIG_MKBP_USE_HOST_EVENT #define CONFIG_POWER_BUTTON #define CONFIG_POWER_BUTTON_X86 +#define CONFIG_POWER_PP5000_CONTROL /* TODO(b/111155507): Don't enable SOiX for now */ /* #define CONFIG_POWER_S0IX */ /* #define CONFIG_POWER_TRACK_HOST_SLEEP_STATE */ diff --git a/power/icelake.c b/power/icelake.c index 04b734c213..86f0f7e459 100644 --- a/power/icelake.c +++ b/power/icelake.c @@ -39,6 +39,13 @@ void chipset_force_shutdown(enum chipset_shutdown_reason reason) /* Turn off DSW load switch. */ gpio_set_level(GPIO_EN_PP3300_A, 0); + /* Turn off PP5000 rail */ +#ifdef CONFIG_POWER_PP5000_CONTROL + power_5v_enable(task_get_current(), 0); +#else + gpio_set_level(GPIO_EN_PP5000, 0); +#endif + /* * TODO(b/111810925): Replace this wait with * power_wait_signals_timeout() @@ -98,6 +105,13 @@ enum power_state power_handle_state(enum power_state state) switch (state) { case POWER_G3S5: + /* Turn on PP5000 rail */ +#ifdef CONFIG_POWER_PP5000_CONTROL + power_5v_enable(task_get_current(), 1); +#else + gpio_set_level(GPIO_EN_PP5000, 1); +#endif + /* * TODO(b/111121615): Should modify this to wait until the * common power state machine indicates that it's ok to try an |