diff options
Diffstat (limited to 'arch/arm/mach-omap2/clockdomain44xx.c')
-rw-r--r-- | arch/arm/mach-omap2/clockdomain44xx.c | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/arch/arm/mach-omap2/clockdomain44xx.c b/arch/arm/mach-omap2/clockdomain44xx.c index 4f04dd11d655..762f2cc542ce 100644 --- a/arch/arm/mach-omap2/clockdomain44xx.c +++ b/arch/arm/mach-omap2/clockdomain44xx.c | |||
@@ -70,7 +70,7 @@ static int omap4_clkdm_clear_all_wkup_sleep_deps(struct clockdomain *clkdm) | |||
70 | 70 | ||
71 | static int omap4_clkdm_sleep(struct clockdomain *clkdm) | 71 | static int omap4_clkdm_sleep(struct clockdomain *clkdm) |
72 | { | 72 | { |
73 | omap4_cminst_clkdm_force_sleep(clkdm->prcm_partition, | 73 | omap4_cminst_clkdm_enable_hwsup(clkdm->prcm_partition, |
74 | clkdm->cm_inst, clkdm->clkdm_offs); | 74 | clkdm->cm_inst, clkdm->clkdm_offs); |
75 | return 0; | 75 | return 0; |
76 | } | 76 | } |
@@ -90,8 +90,12 @@ static void omap4_clkdm_allow_idle(struct clockdomain *clkdm) | |||
90 | 90 | ||
91 | static void omap4_clkdm_deny_idle(struct clockdomain *clkdm) | 91 | static void omap4_clkdm_deny_idle(struct clockdomain *clkdm) |
92 | { | 92 | { |
93 | omap4_cminst_clkdm_disable_hwsup(clkdm->prcm_partition, | 93 | if (clkdm->flags & CLKDM_CAN_FORCE_WAKEUP) |
94 | clkdm->cm_inst, clkdm->clkdm_offs); | 94 | omap4_clkdm_wakeup(clkdm); |
95 | else | ||
96 | omap4_cminst_clkdm_disable_hwsup(clkdm->prcm_partition, | ||
97 | clkdm->cm_inst, | ||
98 | clkdm->clkdm_offs); | ||
95 | } | 99 | } |
96 | 100 | ||
97 | static int omap4_clkdm_clk_enable(struct clockdomain *clkdm) | 101 | static int omap4_clkdm_clk_enable(struct clockdomain *clkdm) |