Re: [PATCH v1 3/6] clk: bcm2835: Switch to clk_divider.determine_rate
From: Marek Szyprowski
Date: Mon Jul 05 2021 - 02:58:01 EST
On 03.07.2021 00:51, Martin Blumenstingl wrote:
> .determine_rate is meant to replace .round_rate in CCF in the future.
> Switch over to .determine_rate now that clk_divider_ops has gained
> support for that.
>
> Cc: Marek Szyprowski <m.szyprowski@xxxxxxxxxxx>
> Cc: Nicolas Saenz Julienne <nsaenz@xxxxxxxxxx>
> Cc: Florian Fainelli <f.fainelli@xxxxxxxxx>
> Cc: Ray Jui <rjui@xxxxxxxxxxxx>
> Cc: Scott Branden <sbranden@xxxxxxxxxxxx>
> Cc: bcm-kernel-feedback-list@xxxxxxxxxxxx
> Cc: linux-rpi-kernel@xxxxxxxxxxxxxxxxxxx
> Signed-off-by: Martin Blumenstingl <martin.blumenstingl@xxxxxxxxxxxxxx>
Tested-by: Marek Szyprowski <m.szyprowski@xxxxxxxxxxx>
> ---
> drivers/clk/bcm/clk-bcm2835.c | 9 ++++-----
> 1 file changed, 4 insertions(+), 5 deletions(-)
>
> diff --git a/drivers/clk/bcm/clk-bcm2835.c b/drivers/clk/bcm/clk-bcm2835.c
> index 1ac803e14fa3..a254512965eb 100644
> --- a/drivers/clk/bcm/clk-bcm2835.c
> +++ b/drivers/clk/bcm/clk-bcm2835.c
> @@ -805,11 +805,10 @@ static int bcm2835_pll_divider_is_on(struct clk_hw *hw)
> return !(cprman_read(cprman, data->a2w_reg) & A2W_PLL_CHANNEL_DISABLE);
> }
>
> -static long bcm2835_pll_divider_round_rate(struct clk_hw *hw,
> - unsigned long rate,
> - unsigned long *parent_rate)
> +static int bcm2835_pll_divider_determine_rate(struct clk_hw *hw,
> + struct clk_rate_request *req)
> {
> - return clk_divider_ops.round_rate(hw, rate, parent_rate);
> + return clk_divider_ops.determine_rate(hw, req);
> }
>
> static unsigned long bcm2835_pll_divider_get_rate(struct clk_hw *hw,
> @@ -901,7 +900,7 @@ static const struct clk_ops bcm2835_pll_divider_clk_ops = {
> .unprepare = bcm2835_pll_divider_off,
> .recalc_rate = bcm2835_pll_divider_get_rate,
> .set_rate = bcm2835_pll_divider_set_rate,
> - .round_rate = bcm2835_pll_divider_round_rate,
> + .determine_rate = bcm2835_pll_divider_determine_rate,
> .debug_init = bcm2835_pll_divider_debug_init,
> };
>
Best regards
--
Marek Szyprowski, PhD
Samsung R&D Institute Poland