]> www.pilppa.org Git - linux-2.6-omap-h63xx.git/commitdiff
PRCM: 34XX: Fixes to ssi clock handling
authorJouni Högander <jouni.hogander@nokia.com>
Mon, 14 Apr 2008 13:06:11 +0000 (16:06 +0300)
committerTony Lindgren <tony@atomide.com>
Mon, 14 Apr 2008 18:08:45 +0000 (11:08 -0700)
ssi_l4_ick should have PARENT_CONTROLS_CLOCK flag.
ST_SSI_STDBY bit in idlest register cannot be used in  omap2_clk_wait_ready

Signed-off-by: Jouni Högander <jouni.hogander@nokia.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
arch/arm/mach-omap2/clock.c
arch/arm/mach-omap2/clock34xx.h

index ca2997141d563a023085c1ad4e5006ab1ae6c274..a2b91c3e1ca4c6e7bdfaf0d23fbf08545c701a4a 100644 (file)
@@ -223,7 +223,9 @@ static void omap2_clk_wait_ready(struct clk *clk)
        /* REVISIT: What are the appropriate exclusions for 34XX? */
        /* OMAP3: ignore DSS-mod clocks */
        if (cpu_is_omap34xx() &&
-           (((u32)reg & ~0xff) == (u32)OMAP_CM_REGADDR(OMAP3430_DSS_MOD, 0)))
+           (((u32)reg & ~0xff) == (u32)OMAP_CM_REGADDR(OMAP3430_DSS_MOD, 0) ||
+            ((((u32)reg & ~0xff) == (u32)OMAP_CM_REGADDR(CORE_MOD, 0)) &&
+            clk->enable_bit == OMAP3430_EN_SSI_SHIFT)))
                return;
 
        /* Check if both functional and interface clocks
index fc03999749b42a017cfd625411fc5ca351c412b2..9ca2cdfbfa3c0369e882d1478dd79e5a9e7a35f4 100644 (file)
@@ -1917,7 +1917,8 @@ static struct clk omapctrl_ick = {
 static struct clk ssi_l4_ick = {
        .name           = "ssi_l4_ick",
        .parent         = &l4_ick,
-       .flags          = CLOCK_IN_OMAP343X | RATE_PROPAGATES,
+       .flags          = CLOCK_IN_OMAP343X | RATE_PROPAGATES |
+                               PARENT_CONTROLS_CLOCK,
        .recalc         = &followparent_recalc,
 };