Re: [PATCH RFC v2 1/9] dt-bindings: clock: renesas,cpg-mssr: Support RZ/T2H system controllers
Geert Uytterhoeven <[email protected]> Mon, 13 Jul 2026 17:49:48 +0200
| Newsgroups | org.kernel.vger.linux-watchdog,org.kernel.vger.linux-clk,org.kernel.vger.linux-devicetree,org.kernel.vger.linux-kernel,org.kernel.vger.linux-renesas-soc |
|---|---|
| Message-ID | <CAMuHMdU62updtKeBBk-vO3YP+qaWTGqHQnzKvFJbrz4J5eEPMQ@mail.gmail.com> |
Hi Prabhakar, On Thu, 2 Jul 2026 at 14:31, Prabhakar <[email protected]> wrote: > From: Lad Prabhakar <[email protected]> > > The RZ/T2H and RZ/N2H SoCs features system controller blocks for low-power > management and access control that reside within the CPG/MSSR address > space. To properly represent these hardware modules, allow them to be > defined as child nodes of the CPG/MSSR controller. > > Update the CPG/MSSR binding to support child nodes by adding > system-controller child nodes using a patternProperty, requiring a reg > property and a renesas,sys-block property to identify the controller > instance. > > Restrict these new properties to the RZ/T2H and RZ/N2H SoCs to ensure > existing bindings for other Renesas SoCs remain unaffected. > > Signed-off-by: Lad Prabhakar <[email protected]> > --- > v1->v2: > - Updated commit message. Thanks for the update! > --- a/Documentation/devicetree/bindings/clock/renesas,cpg-mssr.yaml > +++ b/Documentation/devicetree/bindings/clock/renesas,cpg-mssr.yaml > @@ -99,6 +99,41 @@ properties: > the datasheet. > const: 1 > > + '#address-cells': > + description: > + Required for the RZ/T2H SoC to define the address space for child > + system-controller nodes. > + const: 2 > + > + '#size-cells': > + description: > + Required for the RZ/T2H SoC to define the size of the register > + blocks for child system-controller nodes. > + const: 2 > + > + ranges: > + description: > + Required for the RZ/T2H SoC to provide 1:1 address translation > + from the child system-controller nodes to the CPU address space. > + > +patternProperties: > + "^system-controller@[0-9a-f]+$": > + type: object > + description: > + System controller child nodes representing sub-blocks for > + Low Power Management (LPM) and Access Control. According to the documentation for the PRCi bit in Section 11.3.1 ("PRCRN : Non_Safety Area Protect Register"), the low power consumption bits are in the xx28_xxxx blocks? > + properties: > + reg: > + maxItems: 1 > + renesas,sys-block: > + $ref: /schemas/types.yaml#/definitions/uint32 > + description: Index of the system controller instance. > + enum: [0, 1] I am not so fond of such "index" properties. And of subnodes ;-) > + required: > + - reg > + - renesas,sys-block > + additionalProperties: false > + > required: > - compatible > - reg > @@ -126,6 +161,10 @@ allOf: > properties: > reg: > maxItems: 1 > + '#address-cells': false > + '#size-cells': false > + patternProperties: > + "^system-controller@[0-9a-f]+$": false > - if: > not: > properties: As RZ/T2H and RZ/N2H are rather different than the other (mostly R-Car) variants, perhaps it makes sense to spin them off to a separate bindings document? 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