clk: rockchip: rk3228: Drop CLK_NR_CLKS usage
authorJohan Jonker <jbx6244@gmail.com>
Mon, 26 Aug 2024 16:38:39 +0000 (18:38 +0200)
committerHeiko Stuebner <heiko@sntech.de>
Wed, 28 Aug 2024 19:25:49 +0000 (21:25 +0200)
In order to get rid of CLK_NR_CLKS and be able to drop it from the
bindings, use rockchip_clk_find_max_clk_id helper to find the highest
clock id.

Signed-off-by: Johan Jonker <jbx6244@gmail.com>
Link: https://lore.kernel.org/r/2ee6f0a5-a1bb-4b62-ae6b-8f3828f8eccc@gmail.com
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
drivers/clk/rockchip/clk-rk3228.c

index 7343d2d..ed602c2 100644 (file)
@@ -683,6 +683,7 @@ static const char *const rk3228_critical_clocks[] __initconst = {
 static void __init rk3228_clk_init(struct device_node *np)
 {
        struct rockchip_clk_provider *ctx;
+       unsigned long clk_nr_clks;
        void __iomem *reg_base;
 
        reg_base = of_iomap(np, 0);
@@ -691,7 +692,9 @@ static void __init rk3228_clk_init(struct device_node *np)
                return;
        }
 
-       ctx = rockchip_clk_init(np, reg_base, CLK_NR_CLKS);
+       clk_nr_clks = rockchip_clk_find_max_clk_id(rk3228_clk_branches,
+                                                  ARRAY_SIZE(rk3228_clk_branches)) + 1;
+       ctx = rockchip_clk_init(np, reg_base, clk_nr_clks);
        if (IS_ERR(ctx)) {
                pr_err("%s: rockchip clk init failed\n", __func__);
                iounmap(reg_base);