diff options
-rw-r--r-- | power/rk3399.c | 11 |
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); |