summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--power/rk3399.c11
1 files changed, 6 insertions, 5 deletions
diff --git a/power/rk3399.c b/power/rk3399.c
index 29d5b51051..bdf73853c1 100644
--- a/power/rk3399.c
+++ b/power/rk3399.c
@@ -206,9 +206,6 @@ enum power_state power_handle_state(enum power_state state)
gpio_set_level(GPIO_PP1800_PMU_EN_L, 0);
msleep(2);
- /* TODO(crosbug.com/p/55981): De-power CLOGIC in S3 */
- gpio_set_level(GPIO_PPVAR_CLOGIC_EN, 1);
- msleep(2);
gpio_set_level(GPIO_LPDDR_PWR_EN, 1);
msleep(2);
gpio_set_level(GPIO_PP1800_USB_EN_L, 0);
@@ -235,6 +232,8 @@ enum power_state power_handle_state(enum power_state state)
return POWER_S3;
case POWER_S3S0:
+ gpio_set_level(GPIO_PPVAR_CLOGIC_EN, 1);
+ msleep(2);
gpio_set_level(GPIO_PP900_DDRPLL_EN, 1);
msleep(2);
gpio_set_level(GPIO_PP1800_AP_AVDD_EN_L, 0);
@@ -304,6 +303,10 @@ enum power_state power_handle_state(enum power_state state)
msleep(10);
CHECK_ABORTED_SUSPEND();
+ gpio_set_level(GPIO_PPVAR_CLOGIC_EN, 0);
+ msleep(10);
+ CHECK_ABORTED_SUSPEND();
+
/*
* Enable idle task deep sleep. Allow the low power idle task
* to go into deep sleep in S3 or lower.
@@ -334,8 +337,6 @@ enum power_state power_handle_state(enum power_state state)
msleep(2);
gpio_set_level(GPIO_LPDDR_PWR_EN, 0);
msleep(2);
- gpio_set_level(GPIO_PPVAR_CLOGIC_EN, 0);
- msleep(10);
gpio_set_level(GPIO_PP1800_PMU_EN_L, 1);
msleep(2);
gpio_set_level(GPIO_PP900_USB_EN, 0);