summaryrefslogtreecommitdiff
path: root/drivers/clk/zynqmp
diff options
context:
space:
mode:
authorRajan Vaja <rajan.vaja@xilinx.com>2020-03-02 13:50:40 -0800
committerStephen Boyd <sboyd@kernel.org>2020-05-26 17:58:59 -0700
commit0541e0217ac8daef32650ba8477ff0a55f9a94b1 (patch)
tree2f50ff428f7bc508537e75d1ca0bb446f0f1f9fb /drivers/clk/zynqmp
parent8f3d9f354286745c751374f5f1fcafee6b3f3136 (diff)
clk: zynqmp: Limit bestdiv with maxdiv
Clock divider value should not be greater than maximum divider value. So use minimum of best divider or maximum divider value. Signed-off-by: Rajan Vaja <rajan.vaja@xilinx.com> Signed-off-by: Jolly Shah <jolly.shah@xilinx.com> Link: https://lkml.kernel.org/r/1583185843-20707-2-git-send-email-jolly.shah@xilinx.com Signed-off-by: Stephen Boyd <sboyd@kernel.org>
Diffstat (limited to 'drivers/clk/zynqmp')
-rw-r--r--drivers/clk/zynqmp/divider.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/clk/zynqmp/divider.c b/drivers/clk/zynqmp/divider.c
index 4be2cc76aa2e..5c41ddbee646 100644
--- a/drivers/clk/zynqmp/divider.c
+++ b/drivers/clk/zynqmp/divider.c
@@ -197,6 +197,8 @@ static long zynqmp_clk_divider_round_rate(struct clk_hw *hw,
if ((clk_hw_get_flags(hw) & CLK_SET_RATE_PARENT) && divider->is_frac)
bestdiv = rate % *prate ? 1 : bestdiv;
+
+ bestdiv = min_t(u32, bestdiv, divider->max_div);
*prate = rate * bestdiv;
return rate;