|
@@ -104,7 +104,7 @@ static unsigned long clk_divider_recalc_rate(struct clk_hw *hw,
|
|
struct clk_divider *divider = to_clk_divider(hw);
|
|
struct clk_divider *divider = to_clk_divider(hw);
|
|
unsigned int div, val;
|
|
unsigned int div, val;
|
|
|
|
|
|
- val = readl(divider->reg) >> divider->shift;
|
|
|
|
|
|
+ val = clk_readl(divider->reg) >> divider->shift;
|
|
val &= div_mask(divider);
|
|
val &= div_mask(divider);
|
|
|
|
|
|
div = _get_div(divider, val);
|
|
div = _get_div(divider, val);
|
|
@@ -230,11 +230,11 @@ static int clk_divider_set_rate(struct clk_hw *hw, unsigned long rate,
|
|
if (divider->flags & CLK_DIVIDER_HIWORD_MASK) {
|
|
if (divider->flags & CLK_DIVIDER_HIWORD_MASK) {
|
|
val = div_mask(divider) << (divider->shift + 16);
|
|
val = div_mask(divider) << (divider->shift + 16);
|
|
} else {
|
|
} else {
|
|
- val = readl(divider->reg);
|
|
|
|
|
|
+ val = clk_readl(divider->reg);
|
|
val &= ~(div_mask(divider) << divider->shift);
|
|
val &= ~(div_mask(divider) << divider->shift);
|
|
}
|
|
}
|
|
val |= value << divider->shift;
|
|
val |= value << divider->shift;
|
|
- writel(val, divider->reg);
|
|
|
|
|
|
+ clk_writel(val, divider->reg);
|
|
|
|
|
|
if (divider->lock)
|
|
if (divider->lock)
|
|
spin_unlock_irqrestore(divider->lock, flags);
|
|
spin_unlock_irqrestore(divider->lock, flags);
|