aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGeert Uytterhoeven <geert+renesas@glider.be>2018-03-15 05:44:37 -0400
committerGeert Uytterhoeven <geert+renesas@glider.be>2018-03-21 12:35:00 -0400
commit2b935d524d851830b68dd8c58d3098d775d6047a (patch)
tree3a610ea9b6cf5ba661622072d55ec62a444c5551
parentf046d6a6bf2a1f0db5e2f61b5236efb1b6bebfde (diff)
clk: renesas: rcar-gen3: Always use readl()/writel()
The R-Car Gen3 CPG/MSSR driver (again) uses a mix of clk_readl()/clk_writel() and readl()/writel() to access the clock registers. Settle on the generic readl()/writel(). Cfr. commit 30ad3cf00e94f4a7 ("clk: renesas: rcar-gen3-cpg: Always use readl()/writel()"). Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be> Reviewed-by: Simon Horman <horms+renesas@verge.net.au>
-rw-r--r--drivers/clk/renesas/rcar-gen3-cpg.c14
1 files changed, 7 insertions, 7 deletions
diff --git a/drivers/clk/renesas/rcar-gen3-cpg.c b/drivers/clk/renesas/rcar-gen3-cpg.c
index 0c8fe10d57fe..628b63b85d3f 100644
--- a/drivers/clk/renesas/rcar-gen3-cpg.c
+++ b/drivers/clk/renesas/rcar-gen3-cpg.c
@@ -93,7 +93,7 @@ static unsigned long cpg_z_clk_recalc_rate(struct clk_hw *hw,
93 unsigned int mult; 93 unsigned int mult;
94 u32 val; 94 u32 val;
95 95
96 val = clk_readl(zclk->reg) & zclk->mask; 96 val = readl(zclk->reg) & zclk->mask;
97 mult = 32 - (val >> __ffs(zclk->mask)); 97 mult = 32 - (val >> __ffs(zclk->mask));
98 98
99 /* Factor of 2 is for fixed divider */ 99 /* Factor of 2 is for fixed divider */
@@ -125,20 +125,20 @@ static int cpg_z_clk_set_rate(struct clk_hw *hw, unsigned long rate,
125 mult = DIV_ROUND_CLOSEST_ULL(rate * 32ULL * 2, parent_rate); 125 mult = DIV_ROUND_CLOSEST_ULL(rate * 32ULL * 2, parent_rate);
126 mult = clamp(mult, 1U, 32U); 126 mult = clamp(mult, 1U, 32U);
127 127
128 if (clk_readl(zclk->kick_reg) & CPG_FRQCRB_KICK) 128 if (readl(zclk->kick_reg) & CPG_FRQCRB_KICK)
129 return -EBUSY; 129 return -EBUSY;
130 130
131 val = clk_readl(zclk->reg) & ~zclk->mask; 131 val = readl(zclk->reg) & ~zclk->mask;
132 val |= ((32 - mult) << __ffs(zclk->mask)) & zclk->mask; 132 val |= ((32 - mult) << __ffs(zclk->mask)) & zclk->mask;
133 clk_writel(val, zclk->reg); 133 writel(val, zclk->reg);
134 134
135 /* 135 /*
136 * Set KICK bit in FRQCRB to update hardware setting and wait for 136 * Set KICK bit in FRQCRB to update hardware setting and wait for
137 * clock change completion. 137 * clock change completion.
138 */ 138 */
139 kick = clk_readl(zclk->kick_reg); 139 kick = readl(zclk->kick_reg);
140 kick |= CPG_FRQCRB_KICK; 140 kick |= CPG_FRQCRB_KICK;
141 clk_writel(kick, zclk->kick_reg); 141 writel(kick, zclk->kick_reg);
142 142
143 /* 143 /*
144 * Note: There is no HW information about the worst case latency. 144 * Note: There is no HW information about the worst case latency.
@@ -150,7 +150,7 @@ static int cpg_z_clk_set_rate(struct clk_hw *hw, unsigned long rate,
150 * "super" safe value. 150 * "super" safe value.
151 */ 151 */
152 for (i = 1000; i; i--) { 152 for (i = 1000; i; i--) {
153 if (!(clk_readl(zclk->kick_reg) & CPG_FRQCRB_KICK)) 153 if (!(readl(zclk->kick_reg) & CPG_FRQCRB_KICK))
154 return 0; 154 return 0;
155 155
156 cpu_relax(); 156 cpu_relax();