diff options
author | Rikard Falkeborn <rikard.falkeborn@gmail.com> | 2020-03-18 00:13:32 +0300 |
---|---|---|
committer | Maxime Ripard <maxime@cerno.tech> | 2020-04-14 10:21:05 +0300 |
commit | ee25d9742dabed3fd18158b518f846abeb70f319 (patch) | |
tree | 098aea8ea5ab5b50c2a9a81b9bf80bcb2a64a3c5 | |
parent | 8f3d9f354286745c751374f5f1fcafee6b3f3136 (diff) | |
download | linux-ee25d9742dabed3fd18158b518f846abeb70f319.tar.xz |
clk: sunxi: Fix incorrect usage of round_down()
round_down() can only round to powers of 2. If round_down() is asked
to round to something that is not a power of 2, incorrect results are
produced. The incorrect results can be both too large and too small.
Instead, use rounddown() which can round to any number.
Fixes: 6a721db180a2 ("clk: sunxi: Add A31 clocks support")
Signed-off-by: Rikard Falkeborn <rikard.falkeborn@gmail.com>
Signed-off-by: Maxime Ripard <maxime@cerno.tech>
-rw-r--r-- | drivers/clk/sunxi/clk-sunxi.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/clk/sunxi/clk-sunxi.c b/drivers/clk/sunxi/clk-sunxi.c index 27201fd26e44..e1aa1fbac48a 100644 --- a/drivers/clk/sunxi/clk-sunxi.c +++ b/drivers/clk/sunxi/clk-sunxi.c @@ -90,7 +90,7 @@ static void sun6i_a31_get_pll1_factors(struct factors_request *req) * Round down the frequency to the closest multiple of either * 6 or 16 */ - u32 round_freq_6 = round_down(freq_mhz, 6); + u32 round_freq_6 = rounddown(freq_mhz, 6); u32 round_freq_16 = round_down(freq_mhz, 16); if (round_freq_6 > round_freq_16) |