blob: 17813599fccb23bbbc3328ff03ab7a75573bbe46 [file] [log] [blame]
Tom Rini53633a82024-02-29 12:33:36 -05001# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/dma/renesas,usb-dmac.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Renesas USB DMA Controller
8
9maintainers:
10 - Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
11
12allOf:
13 - $ref: dma-controller.yaml#
14
15properties:
16 compatible:
17 items:
18 - enum:
19 - renesas,r8a7742-usb-dmac # RZ/G1H
20 - renesas,r8a7743-usb-dmac # RZ/G1M
21 - renesas,r8a7744-usb-dmac # RZ/G1N
22 - renesas,r8a7745-usb-dmac # RZ/G1E
23 - renesas,r8a77470-usb-dmac # RZ/G1C
24 - renesas,r8a774a1-usb-dmac # RZ/G2M
25 - renesas,r8a774b1-usb-dmac # RZ/G2N
26 - renesas,r8a774c0-usb-dmac # RZ/G2E
27 - renesas,r8a774e1-usb-dmac # RZ/G2H
28 - renesas,r8a7790-usb-dmac # R-Car H2
29 - renesas,r8a7791-usb-dmac # R-Car M2-W
30 - renesas,r8a7793-usb-dmac # R-Car M2-N
31 - renesas,r8a7794-usb-dmac # R-Car E2
32 - renesas,r8a7795-usb-dmac # R-Car H3
33 - renesas,r8a7796-usb-dmac # R-Car M3-W
34 - renesas,r8a77961-usb-dmac # R-Car M3-W+
35 - renesas,r8a77965-usb-dmac # R-Car M3-N
36 - renesas,r8a77990-usb-dmac # R-Car E3
37 - renesas,r8a77995-usb-dmac # R-Car D3
38 - const: renesas,usb-dmac
39
40 reg:
41 maxItems: 1
42
43 interrupts:
44 minItems: 2
45 maxItems: 2
46
47 interrupt-names:
48 items:
49 - pattern: ch0
50 - pattern: ch1
51
52 clocks:
53 maxItems: 1
54
55 '#dma-cells':
56 const: 1
57 description:
58 The cell specifies the channel number of the DMAC port connected to
59 the DMA client.
60
61 dma-channels:
62 const: 2
63
64 iommus:
65 minItems: 2
66 maxItems: 2
67
68 power-domains:
69 maxItems: 1
70
71 resets:
72 maxItems: 1
73
74required:
75 - compatible
76 - reg
77 - interrupts
78 - interrupt-names
79 - clocks
80 - '#dma-cells'
81 - dma-channels
82 - power-domains
83 - resets
84
85additionalProperties: false
86
87examples:
88 - |
89 #include <dt-bindings/clock/r8a7790-cpg-mssr.h>
90 #include <dt-bindings/interrupt-controller/arm-gic.h>
91 #include <dt-bindings/power/r8a7790-sysc.h>
92
93 usb_dmac0: dma-controller@e65a0000 {
94 compatible = "renesas,r8a7790-usb-dmac", "renesas,usb-dmac";
95 reg = <0xe65a0000 0x100>;
96 interrupts = <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>,
97 <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>;
98 interrupt-names = "ch0", "ch1";
99 clocks = <&cpg CPG_MOD 330>;
100 power-domains = <&sysc R8A7790_PD_ALWAYS_ON>;
101 resets = <&cpg 330>;
102 #dma-cells = <1>;
103 dma-channels = <2>;
104 };