Merge tag 'docs-5.15' of git://git.lwn.net/linux
[linux-2.6-microblaze.git] / Documentation / devicetree / bindings / dma / renesas,usb-dmac.yaml
1 # 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
7 title: Renesas USB DMA Controller
8
9 maintainers:
10   - Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
11
12 allOf:
13   - $ref: "dma-controller.yaml#"
14
15 properties:
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
74 required:
75   - compatible
76   - reg
77   - interrupts
78   - interrupt-names
79   - clocks
80   - '#dma-cells'
81   - dma-channels
82   - power-domains
83   - resets
84
85 additionalProperties: false
86
87 examples:
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     };