]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
clk: si521xx: convert from round_rate() to determine_rate()
authorBrian Masney <bmasney@redhat.com>
Mon, 11 Aug 2025 15:18:34 +0000 (11:18 -0400)
committerBrian Masney <bmasney@redhat.com>
Mon, 8 Sep 2025 13:41:28 +0000 (09:41 -0400)
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@redhat.com>
drivers/clk/clk-si521xx.c

index 4f7b74f889f1e7e9400a61f15d1e6671408bb1fc..4ed4e1a5f4f2b3b9fe063d79fc5140f1b41c4ace 100644 (file)
@@ -164,15 +164,17 @@ static unsigned long si521xx_diff_recalc_rate(struct clk_hw *hw,
        return (unsigned long)rate;
 }
 
-static long si521xx_diff_round_rate(struct clk_hw *hw, unsigned long rate,
-                                   unsigned long *prate)
+static int si521xx_diff_determine_rate(struct clk_hw *hw,
+                                      struct clk_rate_request *req)
 {
        unsigned long best_parent;
 
-       best_parent = (rate / SI521XX_DIFF_MULT) * SI521XX_DIFF_DIV;
-       *prate = clk_hw_round_rate(clk_hw_get_parent(hw), best_parent);
+       best_parent = (req->rate / SI521XX_DIFF_MULT) * SI521XX_DIFF_DIV;
+       req->best_parent_rate = clk_hw_round_rate(clk_hw_get_parent(hw), best_parent);
 
-       return (*prate / SI521XX_DIFF_DIV) * SI521XX_DIFF_MULT;
+       req->rate = (req->best_parent_rate / SI521XX_DIFF_DIV) * SI521XX_DIFF_MULT;
+
+       return 0;
 }
 
 static int si521xx_diff_set_rate(struct clk_hw *hw, unsigned long rate,
@@ -208,7 +210,7 @@ static void si521xx_diff_unprepare(struct clk_hw *hw)
 }
 
 static const struct clk_ops si521xx_diff_clk_ops = {
-       .round_rate     = si521xx_diff_round_rate,
+       .determine_rate = si521xx_diff_determine_rate,
        .set_rate       = si521xx_diff_set_rate,
        .recalc_rate    = si521xx_diff_recalc_rate,
        .prepare        = si521xx_diff_prepare,