There is no usb clkdm in core powerdomain in chip revisions greater
that es1, but hw supervised mode needs to be enabled for it. Othervise
core powerdomain wont enter retention.

Signed-off-by: Jouni Hogander <[EMAIL PROTECTED]>
---
 arch/arm/mach-omap2/pm34xx.c |    9 +++++++++
 1 files changed, 9 insertions(+), 0 deletions(-)

diff --git a/arch/arm/mach-omap2/pm34xx.c b/arch/arm/mach-omap2/pm34xx.c
index 43240d3..dbc3cf1 100644
--- a/arch/arm/mach-omap2/pm34xx.c
+++ b/arch/arm/mach-omap2/pm34xx.c
@@ -600,6 +600,15 @@ static void __init prcm_setup_regs(void)
                __raw_writel(PRM_VOLTCTRL_AUTO_RET,
                             OMAP3430_PRM_VOLTCTRL);
        }
+
+       if (is_sil_rev_greater_than(OMAP3430_REV_ES1_0)) {
+               /* This hack is taken from ti code. There is no usb clkdm in
+                * core, but this still needs to be written: allow idle of usb
+                * clkdm? */
+               v = cm_read_mod_reg(CORE_MOD, CM_CLKSTCTRL);
+               v |= 0x30;
+               cm_write_mod_reg(v, CORE_MOD, CM_CLKSTCTRL);
+       }
 }
 
 static int __init pwrdms_setup(struct powerdomain *pwrdm)
-- 
1.5.5

--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to