From 2a30f22ce51ad2d9346c93d36db7d7190f64f831 Mon Sep 17 00:00:00 2001 From: Rajendra Nayak Date: Tue, 21 Dec 2010 22:37:28 -0700 Subject: [PATCH] --- yaml --- r: 226650 b: refs/heads/master c: 33de32b3ebcb4f7f77f10a1b42493352f00c6a30 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/arch/arm/mach-omap2/pm.c | 8 +++++--- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/[refs] b/[refs] index 38236ae38c3d..ebd95ed6c6a4 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 71a488dbcc4acbc9b845491a368b30ecd7484089 +refs/heads/master: 33de32b3ebcb4f7f77f10a1b42493352f00c6a30 diff --git a/trunk/arch/arm/mach-omap2/pm.c b/trunk/arch/arm/mach-omap2/pm.c index a2b826cdfbf6..9b1db592759f 100644 --- a/trunk/arch/arm/mach-omap2/pm.c +++ b/trunk/arch/arm/mach-omap2/pm.c @@ -95,8 +95,7 @@ static void omap2_init_processor_devices(void) /* * This sets pwrdm state (other than mpu & core. Currently only ON & - * RET are supported. Function is assuming that clkdm doesn't have - * hw_sup mode enabled. + * RET are supported. */ int omap_set_pwrdm_state(struct powerdomain *pwrdm, u32 state) { @@ -137,7 +136,10 @@ int omap_set_pwrdm_state(struct powerdomain *pwrdm, u32 state) switch (sleep_switch) { case FORCEWAKEUP_SWITCH: - omap2_clkdm_allow_idle(pwrdm->pwrdm_clkdms[0]); + if (pwrdm->pwrdm_clkdms[0]->flags & CLKDM_CAN_ENABLE_AUTO) + omap2_clkdm_allow_idle(pwrdm->pwrdm_clkdms[0]); + else + omap2_clkdm_sleep(pwrdm->pwrdm_clkdms[0]); break; case LOWPOWERSTATE_SWITCH: pwrdm_set_lowpwrstchange(pwrdm);