Hi Chris,
On Tue, Sep 18, 2018 at 5:04 PM Chris Brandt <[email protected]> wrote:
> On Tuesday, September 18, 2018, Geert Uytterhoeven wrote:
> > Then the early init from CLK_OF_DECLARE() will just register the
> > early clocks, and cpg_mssr_probe() can take care of the remaining parts?
>
> What is not clear to me is what goes in DT????
>
> I will have this in .dtsi for cpg_mssr_probe():
>
> cpg: clock-controller@fcfe0020 {
> compatible = "renesas,r7s9210-cpg-mssr";
> reg = <0xfcfe0010 0x455>; /* ----------- FCFE0010 - FCFE0465
> */
> clocks = <&extal_clk>;
> clock-names = "extal";
>
>
> But, I also need /something/ for CLK_OF_DECLARE().
> That means a second DT node (which means 2 different devices, 2
> different drivers)
>
> What do you see the .dtsi and .dts looking like?
The part using CLK_OF_DECLARE() is not a platform driver. It does not
operate on a device (struct platform_device), but on a device node (struct
device_node). Hence it would match against the same DT node, but map it
using of_iomap(). So you just need the existing "renesas,r7s9210-cpg-mssr"
node.
Please have a look at e.g. "mediatek,mt2712-topckgen".
Gr{oetje,eeting}s,
Geert
--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- [email protected]
In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds