[PATCH v5 4/6] clk: rockchip: Add clock controller support for RV1126 SoC.
Jagan Teki
jagan at edgeble.ai
Sat Sep 17 04:58:43 PDT 2022
On Sat, 17 Sept 2022 at 12:25, Heiko Stuebner <heiko at sntech.de> wrote:
>
> Am Donnerstag, 15. September 2022, 18:39:45 CEST schrieb Jagan Teki:
> > Clock & Reset Unit (CRU) in RV1126 support clocks for CRU
> > and CRU_PMU blocks.
> >
> > This patch is trying to add minimal Clock-Architecture Diagram's
> > inferred from [1] authored by Finley Xiao.
> >
> > [1] https://github.com/rockchip-linux/kernel/blob/develop-4.19/drivers/clk/rockchip/clk-rv1126.c
> >
> > Cc: linux-clk at vger.kernel.org
> > Cc: Michael Turquette <mturquette at baylibre.com>
> > Cc: Stephen Boyd <sboyd at kernel.org>
> > Signed-off-by: Finley Xiao <finley.xiao at rock-chips.com>
> > Signed-off-by: Jagan Teki <jagan at edgeble.ai>
> > ---
> > Changes for v5:
> > - add platform-drivers
>
> [...]
>
> > +static void __init rv1126_pmu_clk_init(struct device_node *np)
> > +{
> > + struct rockchip_clk_provider *ctx;
> > + void __iomem *reg_base;
> > +
> > + reg_base = of_iomap(np, 0);
> > + if (!reg_base) {
> > + pr_err("%s: could not map cru pmu region\n", __func__);
> > + return;
> > + }
> > +
> > + ctx = rockchip_clk_init(np, reg_base, CLKPMU_NR_CLKS);
> > + if (IS_ERR(ctx)) {
> > + pr_err("%s: rockchip pmu clk init failed\n", __func__);
> > + return;
> > + }
> > +
> > + rockchip_clk_register_plls(ctx, rv1126_pmu_pll_clks,
> > + ARRAY_SIZE(rv1126_pmu_pll_clks),
> > + RV1126_GRF_SOC_STATUS0);
> > +
> > + rockchip_clk_register_branches(ctx, rv1126_clk_pmu_branches,
> > + ARRAY_SIZE(rv1126_clk_pmu_branches));
> > +
> > + rockchip_register_softrst(np, 2, reg_base + RV1126_PMU_SOFTRST_CON(0),
> > + ROCKCHIP_SOFTRST_HIWORD_MASK);
> > +
> > + rockchip_clk_of_add_provider(np, ctx);
> > +}
> > +
> > +CLK_OF_DECLARE(rv1126_cru_pmu, "rockchip,rv1126-pmucru", rv1126_pmu_clk_init);
>
> this one and the one below should go away I think.
>
> Can you check if that is the case, then I can just drop the two
> CLK_OF_DECLARE lines.
I think these are unneeded, it worked w/o these when I built a static.
but others are still included.
https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/tree/drivers/clk/rockchip/clk-rk3568.c#n1636
https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/tree/drivers/clk/rockchip/clk-rk3568.c#n1679
Jagan.
More information about the Linux-rockchip
mailing list