Current implementation will disable clocks in the order defined in clock34xx.h,
at least DPLL4_M2X2 will hang in certain cases (and prevent retention / off)
if clocks are not disabled in correct order. This patch makes sure the parent
clocks will be active when disabling a clock.
linux-omap source commit is 
672680063420ef8c8c4e7271984bb9cc08171d29.
Signed-off-by: Tero Kristo <tero.kristo@nokia.com>
Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
                return;
 
        printk(KERN_INFO "Disabling unused clock \"%s\"\n", clk->name);
-       _omap2_clk_disable(clk);
+       if (cpu_is_omap34xx()) {
+               omap2_clk_enable(clk);
+               omap2_clk_disable(clk);
+       } else
+               _omap2_clk_disable(clk);
 }
 #endif