Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input
[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,r8a7743-usb-dmac  # RZ/G1M
20           - renesas,r8a7744-usb-dmac  # RZ/G1N
21           - renesas,r8a7745-usb-dmac  # RZ/G1E
22           - renesas,r8a77470-usb-dmac # RZ/G1C
23           - renesas,r8a774a1-usb-dmac # RZ/G2M
24           - renesas,r8a774b1-usb-dmac # RZ/G2N
25           - renesas,r8a774c0-usb-dmac # RZ/G2E
26           - renesas,r8a7790-usb-dmac  # R-Car H2
27           - renesas,r8a7791-usb-dmac  # R-Car M2-W
28           - renesas,r8a7793-usb-dmac  # R-Car M2-N
29           - renesas,r8a7794-usb-dmac  # R-Car E2
30           - renesas,r8a7795-usb-dmac  # R-Car H3
31           - renesas,r8a7796-usb-dmac  # R-Car M3-W
32           - renesas,r8a77961-usb-dmac # R-Car M3-W+
33           - renesas,r8a77965-usb-dmac # R-Car M3-N
34           - renesas,r8a77990-usb-dmac # R-Car E3
35           - renesas,r8a77995-usb-dmac # R-Car D3
36       - const: renesas,usb-dmac
37
38   reg:
39     maxItems: 1
40
41   interrupts:
42     minItems: 2
43     maxItems: 2
44
45   interrupt-names:
46     items:
47       - pattern: ch0
48       - pattern: ch1
49
50   clocks:
51     maxItems: 1
52
53   '#dma-cells':
54     const: 1
55     description:
56       The cell specifies the channel number of the DMAC port connected to
57       the DMA client.
58
59   dma-channels:
60     const: 2
61
62   iommus:
63     minItems: 2
64     maxItems: 2
65
66   power-domains:
67     maxItems: 1
68
69   resets:
70     maxItems: 1
71
72 required:
73   - compatible
74   - reg
75   - interrupts
76   - interrupt-names
77   - clocks
78   - '#dma-cells'
79   - dma-channels
80   - power-domains
81   - resets
82
83 additionalProperties: false
84
85 examples:
86   - |
87     #include <dt-bindings/clock/r8a7790-cpg-mssr.h>
88     #include <dt-bindings/interrupt-controller/arm-gic.h>
89     #include <dt-bindings/power/r8a7790-sysc.h>
90
91     usb_dmac0: dma-controller@e65a0000 {
92         compatible = "renesas,r8a7790-usb-dmac", "renesas,usb-dmac";
93         reg = <0xe65a0000 0x100>;
94         interrupts = <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>,
95                      <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>;
96         interrupt-names = "ch0", "ch1";
97         clocks = <&cpg CPG_MOD 330>;
98         power-domains = <&sysc R8A7790_PD_ALWAYS_ON>;
99         resets = <&cpg 330>;
100         #dma-cells = <1>;
101         dma-channels = <2>;
102     };