clk: rockchip: rk3399: Drop CLK_NR_CLKS CLKPMU_NR_CLKS usage
authorJohan Jonker <jbx6244@gmail.com>
Mon, 26 Aug 2024 16:39:36 +0000 (18:39 +0200)
committerHeiko Stuebner <heiko@sntech.de>
Wed, 28 Aug 2024 19:25:50 +0000 (21:25 +0200)
In order to get rid of CLK_NR_CLKS and CLKPMU_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/45f83b1f-64f8-4ea5-bc93-ebf7507a9709@gmail.com
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
drivers/clk/rockchip/clk-rk3399.c

index 4f1a578..c2b243d 100644 (file)
@@ -1531,6 +1531,7 @@ static const char *const rk3399_pmucru_critical_clocks[] __initconst = {
 static void __init rk3399_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);
@@ -1539,7 +1540,9 @@ static void __init rk3399_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(rk3399_clk_branches,
+                                                  ARRAY_SIZE(rk3399_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);
@@ -1577,6 +1580,7 @@ CLK_OF_DECLARE(rk3399_cru, "rockchip,rk3399-cru", rk3399_clk_init);
 static void __init rk3399_pmu_clk_init(struct device_node *np)
 {
        struct rockchip_clk_provider *ctx;
+       unsigned long clkpmu_nr_clks;
        void __iomem *reg_base;
 
        reg_base = of_iomap(np, 0);
@@ -1585,7 +1589,9 @@ static void __init rk3399_pmu_clk_init(struct device_node *np)
                return;
        }
 
-       ctx = rockchip_clk_init(np, reg_base, CLKPMU_NR_CLKS);
+       clkpmu_nr_clks = rockchip_clk_find_max_clk_id(rk3399_clk_pmu_branches,
+                                                     ARRAY_SIZE(rk3399_clk_pmu_branches)) + 1;
+       ctx = rockchip_clk_init(np, reg_base, clkpmu_nr_clks);
        if (IS_ERR(ctx)) {
                pr_err("%s: rockchip pmu clk init failed\n", __func__);
                iounmap(reg_base);