aboutsummaryrefslogtreecommitdiffstats
path: root/arch/unicore32/kernel
diff options
context:
space:
mode:
Diffstat (limited to 'arch/unicore32/kernel')
-rw-r--r--arch/unicore32/kernel/clock.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/arch/unicore32/kernel/clock.c b/arch/unicore32/kernel/clock.c
index 18d4563e6fa5..b1ca775f6f6e 100644
--- a/arch/unicore32/kernel/clock.c
+++ b/arch/unicore32/kernel/clock.c
@@ -179,7 +179,7 @@ int clk_set_rate(struct clk *clk, unsigned long rate)
179 } 179 }
180#ifdef CONFIG_CPU_FREQ 180#ifdef CONFIG_CPU_FREQ
181 if (clk == &clk_mclk_clk) { 181 if (clk == &clk_mclk_clk) {
182 u32 pll_rate, divstatus = PM_DIVSTATUS; 182 u32 pll_rate, divstatus = readl(PM_DIVSTATUS);
183 int ret, i; 183 int ret, i;
184 184
185 /* lookup mclk_clk_table */ 185 /* lookup mclk_clk_table */
@@ -201,10 +201,10 @@ int clk_set_rate(struct clk *clk, unsigned long rate)
201 / (((divstatus & 0x0000f000) >> 12) + 1); 201 / (((divstatus & 0x0000f000) >> 12) + 1);
202 202
203 /* set pll sys cfg reg. */ 203 /* set pll sys cfg reg. */
204 PM_PLLSYSCFG = pll_rate; 204 writel(pll_rate, PM_PLLSYSCFG);
205 205
206 PM_PMCR = PM_PMCR_CFBSYS; 206 writel(PM_PMCR_CFBSYS, PM_PMCR);
207 while ((PM_PLLDFCDONE & PM_PLLDFCDONE_SYSDFC) 207 while ((readl(PM_PLLDFCDONE) & PM_PLLDFCDONE_SYSDFC)
208 != PM_PLLDFCDONE_SYSDFC) 208 != PM_PLLDFCDONE_SYSDFC)
209 udelay(100); 209 udelay(100);
210 /* about 1ms */ 210 /* about 1ms */