]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
clk: microchip: core: remove duplicate roclk_determine_rate()
authorBrian Masney <bmasney@redhat.com>
Sun, 28 Sep 2025 00:34:34 +0000 (20:34 -0400)
committerStephen Boyd <sboyd@kernel.org>
Wed, 1 Oct 2025 04:54:29 +0000 (21:54 -0700)
Fix compiler error caused by the round_rate() to determine_rate()
migration.

Reported-by: kernel test robot <lkp@intel.com>
Closes: https://lore.kernel.org/oe-kbuild-all/202509280327.jsapR0Ww-lkp@intel.com/
Signed-off-by: Brian Masney <bmasney@redhat.com>
Fixes: e9f039c08cdc ("clk: microchip: core: convert from round_rate() to determine_rate()")
Signed-off-by: Stephen Boyd <sboyd@kernel.org>
drivers/clk/microchip/clk-core.c

index 3e03e10539c72cc28e53401093e37409c2ea3d08..b34348d491f3e1b576b2b9a8a66bfddd8c2296ea 100644 (file)
@@ -374,20 +374,6 @@ static unsigned long roclk_recalc_rate(struct clk_hw *hw,
        return roclk_calc_rate(parent_rate, rodiv, rotrim);
 }
 
-static int roclk_determine_rate(struct clk_hw *hw,
-                               struct clk_rate_request *req)
-{
-       u32 rotrim, rodiv;
-
-       /* calculate dividers for new rate */
-       roclk_calc_div_trim(req->rate, req->best_parent_rate, &rodiv, &rotrim);
-
-       /* caclulate new rate (rounding) based on new rodiv & rotrim */
-       req->rate = roclk_calc_rate(req->best_parent_rate, rodiv, rotrim);
-
-       return 0;
-}
-
 static int roclk_determine_rate(struct clk_hw *hw,
                                struct clk_rate_request *req)
 {
@@ -398,6 +384,8 @@ static int roclk_determine_rate(struct clk_hw *hw,
 
        /* find a parent which can generate nearest clkrate >= rate */
        for (i = 0; i < clk_hw_get_num_parents(hw); i++) {
+               u32 rotrim, rodiv;
+
                /* get parent */
                parent_clk = clk_hw_get_parent_by_index(hw, i);
                if (!parent_clk)
@@ -408,7 +396,12 @@ static int roclk_determine_rate(struct clk_hw *hw,
                if (req->rate > parent_rate)
                        continue;
 
-               nearest_rate = roclk_round_rate(hw, req->rate, &parent_rate);
+               /* calculate dividers for new rate */
+               roclk_calc_div_trim(req->rate, req->best_parent_rate, &rodiv, &rotrim);
+
+               /* caclulate new rate (rounding) based on new rodiv & rotrim */
+               nearest_rate = roclk_calc_rate(req->best_parent_rate, rodiv, rotrim);
+
                delta = abs(nearest_rate - req->rate);
                if ((nearest_rate >= req->rate) && (delta < best_delta)) {
                        best_parent_clk = parent_clk;