[PATCH 049/114] clk: spacemit: ccu_ddn: convert from round_rate() to determine_rate()
Yixun Lan
dlan at kernel.org
Mon Aug 25 01:40:43 PDT 2025
Hi Brian,
Thanks for doing this
I will give my rb to 49-51 for SpacemiT, and here we face same
issue as Krzysztof did for samsung, to avoid potential conflicts
we will route the clk patches through SpacemiT SoC tree..
On 11:18 Mon 11 Aug , Brian Masney via B4 Relay wrote:
> From: Brian Masney <bmasney at redhat.com>
>
> The round_rate() clk ops is deprecated, so migrate this driver from
> round_rate() to determine_rate() using the Coccinelle semantic patch
> on the cover letter of this series.
>
> Signed-off-by: Brian Masney <bmasney at redhat.com>
Reviewed-by: Yixun Lan <dlan at kernel.org>
> ---
> drivers/clk/spacemit/ccu_ddn.c | 11 +++++++----
> 1 file changed, 7 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/clk/spacemit/ccu_ddn.c b/drivers/clk/spacemit/ccu_ddn.c
> index be311b045698e95a688a35858a8ac1bcfbffd2c7..02b68ea84db9bd3ecdde41f8013c48263edbd917 100644
> --- a/drivers/clk/spacemit/ccu_ddn.c
> +++ b/drivers/clk/spacemit/ccu_ddn.c
> @@ -39,13 +39,16 @@ static unsigned long ccu_ddn_calc_best_rate(struct ccu_ddn *ddn,
> return ccu_ddn_calc_rate(prate, *num, *den);
> }
>
> -static long ccu_ddn_round_rate(struct clk_hw *hw, unsigned long rate,
> - unsigned long *prate)
> +static int ccu_ddn_determine_rate(struct clk_hw *hw,
> + struct clk_rate_request *req)
> {
> struct ccu_ddn *ddn = hw_to_ccu_ddn(hw);
> unsigned long num, den;
>
> - return ccu_ddn_calc_best_rate(ddn, rate, *prate, &num, &den);
> + req->rate = ccu_ddn_calc_best_rate(ddn, req->rate,
> + req->best_parent_rate, &num, &den);
> +
> + return 0;
> }
>
> static unsigned long ccu_ddn_recalc_rate(struct clk_hw *hw, unsigned long prate)
> @@ -78,6 +81,6 @@ static int ccu_ddn_set_rate(struct clk_hw *hw, unsigned long rate,
>
> const struct clk_ops spacemit_ccu_ddn_ops = {
> .recalc_rate = ccu_ddn_recalc_rate,
> - .round_rate = ccu_ddn_round_rate,
> + .determine_rate = ccu_ddn_determine_rate,
> .set_rate = ccu_ddn_set_rate,
> };
>
> --
> 2.50.1
>
>
--
Yixun Lan (dlan)
More information about the linux-riscv
mailing list