diff options
author | Anson Huang <Anson.Huang@nxp.com> | 2016-11-23 19:17:48 +0800 |
---|---|---|
committer | Leonard Crestez <leonard.crestez@nxp.com> | 2018-08-24 12:41:33 +0300 |
commit | 713f4b88d21d658b6b2572dcb62a206a74562c00 (patch) | |
tree | d425a1598f033ed3f866663b861a7d67dcfb8684 /arch/arm | |
parent | 8dd18a2c5d95a59081fabda54b12f40fdaee77da (diff) |
MLK-13524 ARM: imx: enable RBB for i.mx7ulp VLPS mode
RBB needs to be enabled for VLPS mode to save
power, it can save ~0.4mA on VDD_DIG1.
Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Diffstat (limited to 'arch/arm')
-rw-r--r-- | arch/arm/mach-imx/pm-imx7ulp.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/arch/arm/mach-imx/pm-imx7ulp.c b/arch/arm/mach-imx/pm-imx7ulp.c index fb8b0d88e4db..bdf3a637dd05 100644 --- a/arch/arm/mach-imx/pm-imx7ulp.c +++ b/arch/arm/mach-imx/pm-imx7ulp.c @@ -70,6 +70,8 @@ #define BM_PMCTRL_RUNM (3 << 8) #define BM_PMCTRL_STOPM (7 << 0) +#define BM_VLPS_RBBEN (1 << 28) + #define BM_CTRL_LDOEN (1 << 31) #define BM_CTRL_LDOOKDIS (1 << 30) @@ -420,10 +422,16 @@ static int imx7ulp_pm_enter(suspend_state_t state) switch (state) { case PM_SUSPEND_STANDBY: imx7ulp_set_lpm(VLPS); + writel_relaxed( + readl_relaxed(pmc1_base + PMC_VLPS) | BM_VLPS_RBBEN, + pmc1_base + PMC_VLPS); /* Zzz ... */ cpu_suspend(0, imx7ulp_suspend_finish); + writel_relaxed( + readl_relaxed(pmc1_base + PMC_VLPS) & ~BM_VLPS_RBBEN, + pmc1_base + PMC_VLPS); imx7ulp_set_lpm(RUN); break; case PM_SUSPEND_MEM: |