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