@@ -135,16 +135,16 @@ static void wait_until_divider_stable(void __iomem *div_reg, unsigned long mask)
135
135
* value was changed.
136
136
*/
137
137
static void wait_until_mux_stable (void __iomem * mux_reg , u32 mux_pos ,
138
- unsigned long mux_value )
138
+ unsigned long mask , unsigned long mux_value )
139
139
{
140
140
unsigned long timeout = jiffies + msecs_to_jiffies (MAX_STAB_TIME );
141
141
142
142
do {
143
- if (((readl (mux_reg ) >> mux_pos ) & MUX_MASK ) == mux_value )
143
+ if (((readl (mux_reg ) >> mux_pos ) & mask ) == mux_value )
144
144
return ;
145
145
} while (time_before (jiffies , timeout ));
146
146
147
- if (((readl (mux_reg ) >> mux_pos ) & MUX_MASK ) == mux_value )
147
+ if (((readl (mux_reg ) >> mux_pos ) & mask ) == mux_value )
148
148
return ;
149
149
150
150
pr_err ("%s: re-parenting mux timed-out\n" , __func__ );
@@ -249,7 +249,7 @@ static int exynos_cpuclk_pre_rate_change(struct clk_notifier_data *ndata,
249
249
/* select sclk_mpll as the alternate parent */
250
250
mux_reg = readl (base + regs -> mux_sel );
251
251
writel (mux_reg | (1 << 16 ), base + regs -> mux_sel );
252
- wait_until_mux_stable (base + regs -> mux_stat , 16 , 2 );
252
+ wait_until_mux_stable (base + regs -> mux_stat , 16 , MUX_MASK , 2 );
253
253
254
254
/* alternate parent is active now. set the dividers */
255
255
writel (div0 , base + regs -> div_cpu0 );
@@ -290,7 +290,7 @@ static int exynos_cpuclk_post_rate_change(struct clk_notifier_data *ndata,
290
290
/* select mout_apll as the alternate parent */
291
291
mux_reg = readl (base + regs -> mux_sel );
292
292
writel (mux_reg & ~(1 << 16 ), base + regs -> mux_sel );
293
- wait_until_mux_stable (base + regs -> mux_stat , 16 , 1 );
293
+ wait_until_mux_stable (base + regs -> mux_stat , 16 , MUX_MASK , 1 );
294
294
295
295
if (cpuclk -> flags & CLK_CPU_NEEDS_DEBUG_ALT_DIV ) {
296
296
div |= (cfg_data -> div0 & E4210_DIV0_ATB_MASK );
@@ -362,7 +362,7 @@ static int exynos5433_cpuclk_pre_rate_change(struct clk_notifier_data *ndata,
362
362
/* select the alternate parent */
363
363
mux_reg = readl (base + regs -> mux_sel );
364
364
writel (mux_reg | 1 , base + regs -> mux_sel );
365
- wait_until_mux_stable (base + regs -> mux_stat , 0 , 2 );
365
+ wait_until_mux_stable (base + regs -> mux_stat , 0 , MUX_MASK , 2 );
366
366
367
367
/* alternate parent is active now. set the dividers */
368
368
writel (div0 , base + regs -> div_cpu0 );
@@ -390,7 +390,7 @@ static int exynos5433_cpuclk_post_rate_change(struct clk_notifier_data *ndata,
390
390
/* select apll as the alternate parent */
391
391
mux_reg = readl (base + regs -> mux_sel );
392
392
writel (mux_reg & ~1 , base + regs -> mux_sel );
393
- wait_until_mux_stable (base + regs -> mux_stat , 0 , 1 );
393
+ wait_until_mux_stable (base + regs -> mux_stat , 0 , MUX_MASK , 1 );
394
394
395
395
exynos_set_safe_div (cpuclk , div , div_mask );
396
396
spin_unlock_irqrestore (cpuclk -> lock , flags );
0 commit comments