[PATCH RFC v2 1/9] dt-bindings: clock: renesas,cpg-mssr: Support RZ/T2H system controllers
Prabhakar <[email protected]>
| 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 | <[email protected]> |
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. --- .../bindings/clock/renesas,cpg-mssr.yaml | 39 +++++++++++++++++++ 1 file changed, 39 insertions(+) diff --git a/Documentation/devicetree/bindings/clock/renesas,cpg-mssr.yaml b/Documentation/devicetree/bindings/clock/renesas,cpg-mssr.yaml index 655154534c0f..ec13fcaf763e 100644 --- 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. + properties: + reg: + maxItems: 1 + renesas,sys-block: + $ref: /schemas/types.yaml#/definitions/uint32 + description: Index of the system controller instance. + enum: [0, 1] + 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: -- 2.54.0