summary refs log tree commit diff
path: root/drivers/clk
diff options
context:
space:
mode:
authorLars-Peter Clausen <lars@metafoo.de>2023-01-14 15:34:58 -0800
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2023-07-19 16:21:16 +0200
commit548b67c0aad4a50988e4ad11e071c523e41e6358 (patch)
tree47c5572ab2f594d04e7f1371403a21784e90921d /drivers/clk
parent50fb32197f60333666dac9ae23aa107d2c9ad8ba (diff)
downloadlinux-548b67c0aad4a50988e4ad11e071c523e41e6358.tar.gz
clk: vc5: Use `clamp()` to restrict PLL range
[ Upstream commit 3ed741db04f58e8df0d46cec7ecfc4bfd075f047 ]

The VCO frequency needs to be within a certain range and the driver
enforces this.

Make use of the clamp macro to implement this instead of open-coding it.
This makes the code a bit shorter and also semanticly stronger.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Link: https://lore.kernel.org/r/20230114233500.3294789-1-lars@metafoo.de
Reviewed-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
Signed-off-by: Stephen Boyd <sboyd@kernel.org>
Stable-dep-of: be3471c5bd9b ("clk: vc5: Fix .driver_data content in i2c_device_id")
Signed-off-by: Sasha Levin <sashal@kernel.org>
Diffstat (limited to 'drivers/clk')
-rw-r--r--drivers/clk/clk-versaclock5.c5
1 files changed, 1 insertions, 4 deletions
diff --git a/drivers/clk/clk-versaclock5.c b/drivers/clk/clk-versaclock5.c
index 88689415aff9..abfe59ac4e48 100644
--- a/drivers/clk/clk-versaclock5.c
+++ b/drivers/clk/clk-versaclock5.c
@@ -450,10 +450,7 @@ static long vc5_pll_round_rate(struct clk_hw *hw, unsigned long rate,
 	u32 div_int;
 	u64 div_frc;
 
-	if (rate < VC5_PLL_VCO_MIN)
-		rate = VC5_PLL_VCO_MIN;
-	if (rate > VC5_PLL_VCO_MAX)
-		rate = VC5_PLL_VCO_MAX;
+	rate = clamp(rate, VC5_PLL_VCO_MIN, VC5_PLL_VCO_MAX);
 
 	/* Determine integer part, which is 12 bit wide */
 	div_int = rate / *parent_rate;