The Renesas RZ/T2H (R9A09G077) and RZ/N2H (R9A09G087) SoCs have three
DMAC instances. Compared to the previously supported RZ/V2H, these SoCs
are missing the error interrupt line and the reset lines, and they use
a different ICU IP.
Document them, and use RZ/T2H as a fallback for RZ/N2H as the DMACs are
entirely compatible.
Signed-off-by: Cosmin Tanislav <cosmin-gabriel.tanislav.xa@renesas.com>
Reviewed-by: Rob Herring (Arm) <robh@kernel.org>
Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be>
Link: https://patch.msgid.link/20260105114445.878262-4-cosmin-gabriel.tanislav.xa@renesas.com
Signed-off-by: Vinod Koul <vkoul@kernel.org>
- const: renesas,r9a09g057-dmac # RZ/V2H(P)
+ - const: renesas,r9a09g077-dmac # RZ/T2H
+
+ - items:
+ - enum:
+ - renesas,r9a09g087-dmac # RZ/N2H
+ - const: renesas,r9a09g077-dmac
+
reg:
items:
- description: Control and channel register block
minItems: 1
interrupts:
+ minItems: 16
maxItems: 17
interrupt-names:
- items:
- - const: error
- - const: ch0
- - const: ch1
- - const: ch2
- - const: ch3
- - const: ch4
- - const: ch5
- - const: ch6
- - const: ch7
- - const: ch8
- - const: ch9
- - const: ch10
- - const: ch11
- - const: ch12
- - const: ch13
- - const: ch14
- - const: ch15
+ minItems: 16
+ maxItems: 17
clocks:
items:
allOf:
- $ref: dma-controller.yaml#
+ - if:
+ properties:
+ compatible:
+ contains:
+ enum:
+ - renesas,rz-dmac
+ - renesas,r9a09g057-dmac
+ then:
+ properties:
+ interrupt-names:
+ items:
+ - const: error
+ - const: ch0
+ - const: ch1
+ - const: ch2
+ - const: ch3
+ - const: ch4
+ - const: ch5
+ - const: ch6
+ - const: ch7
+ - const: ch8
+ - const: ch9
+ - const: ch10
+ - const: ch11
+ - const: ch12
+ - const: ch13
+ - const: ch14
+ - const: ch15
+
- if:
properties:
compatible:
- renesas,icu
- resets
+ - if:
+ properties:
+ compatible:
+ contains:
+ const: renesas,r9a09g077-dmac
+ then:
+ properties:
+ reg:
+ maxItems: 1
+ clocks:
+ maxItems: 1
+
+ clock-names: false
+ resets: false
+ reset-names: false
+
+ interrupts:
+ maxItems: 16
+
+ interrupt-names:
+ items:
+ - const: ch0
+ - const: ch1
+ - const: ch2
+ - const: ch3
+ - const: ch4
+ - const: ch5
+ - const: ch6
+ - const: ch7
+ - const: ch8
+ - const: ch9
+ - const: ch10
+ - const: ch11
+ - const: ch12
+ - const: ch13
+ - const: ch14
+ - const: ch15
+
+ required:
+ - clocks
+ - power-domains
+ - renesas,icu
+
additionalProperties: false
examples: