ARM: mach-shmobile: clock-sh7372: fixup pllc2 set_rate
authorKuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Tue, 11 Jan 2011 05:11:20 +0000 (05:11 +0000)
committerPaul Mundt <lethal@linux-sh.org>
Tue, 18 Jan 2011 04:45:10 +0000 (13:45 +0900)
This patch fixup 421b446abeec55bed1251fab80cb5c12be58b773
 - Care clk->rate
 - Don't over write PLLC2 enable bit

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Reported-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Tested-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
arch/arm/mach-shmobile/clock-sh7372.c

index 9aa8d68..e9731b5 100644 (file)
@@ -234,7 +234,9 @@ static int pllc2_set_rate(struct clk *clk, unsigned long rate)
 
        value = __raw_readl(PLLC2CR) & ~(0x3f << 24);
 
-       __raw_writel((value & ~0x80000000) | ((idx + 19) << 24), PLLC2CR);
+       __raw_writel(value | ((idx + 19) << 24), PLLC2CR);
+
+       clk->rate = clk->freq_table[idx].frequency;
 
        return 0;
 }