Merge commit '81fd23e2b3ccf71c807e671444e8accaba98ca53' of https://git.pengutronix...
[linux-2.6-microblaze.git] / Documentation / devicetree / bindings / usb / renesas,usbhs.yaml
1 # SPDX-License-Identifier: GPL-2.0-only
2 %YAML 1.2
3 ---
4 $id: http://devicetree.org/schemas/usb/renesas,usbhs.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
6
7 title: Renesas USBHS (HS-USB) controller
8
9 maintainers:
10   - Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
11
12 properties:
13   compatible:
14     oneOf:
15       - items:
16           - const: renesas,usbhs-r7s72100 # RZ/A1
17           - const: renesas,rza1-usbhs
18
19       - items:
20           - const: renesas,usbhs-r7s9210 # RZ/A2
21           - const: renesas,rza2-usbhs
22
23       - items:
24           - enum:
25               - renesas,usbhs-r8a7742  # RZ/G1H
26               - renesas,usbhs-r8a7743  # RZ/G1M
27               - renesas,usbhs-r8a7744  # RZ/G1N
28               - renesas,usbhs-r8a7745  # RZ/G1E
29               - renesas,usbhs-r8a77470 # RZ/G1C
30               - renesas,usbhs-r8a7790  # R-Car H2
31               - renesas,usbhs-r8a7791  # R-Car M2-W
32               - renesas,usbhs-r8a7792  # R-Car V2H
33               - renesas,usbhs-r8a7793  # R-Car M2-N
34               - renesas,usbhs-r8a7794  # R-Car E2
35           - const: renesas,rcar-gen2-usbhs
36
37       - items:
38           - enum:
39               - renesas,usbhs-r8a774a1 # RZ/G2M
40               - renesas,usbhs-r8a774b1 # RZ/G2N
41               - renesas,usbhs-r8a774c0 # RZ/G2E
42               - renesas,usbhs-r8a774e1 # RZ/G2H
43               - renesas,usbhs-r8a7795  # R-Car H3
44               - renesas,usbhs-r8a7796  # R-Car M3-W
45               - renesas,usbhs-r8a77961 # R-Car M3-W+
46               - renesas,usbhs-r8a77965 # R-Car M3-N
47               - renesas,usbhs-r8a77990 # R-Car E3
48               - renesas,usbhs-r8a77995 # R-Car D3
49           - const: renesas,rcar-gen3-usbhs
50
51   reg:
52     maxItems: 1
53
54   clocks:
55     minItems: 1
56     items:
57       - description: USB 2.0 host
58       - description: USB 2.0 peripheral
59       - description: USB 2.0 clock selector
60
61   interrupts:
62     maxItems: 1
63
64   renesas,buswait:
65     $ref: /schemas/types.yaml#/definitions/uint32
66     description: |
67       Integer to use BUSWAIT register.
68
69   renesas,enable-gpio:
70     maxItems: 1
71     description: |
72       gpio specifier to check GPIO determining if USB function should be
73       enabled.
74
75   phys:
76     maxItems: 1
77
78   phy-names:
79     items:
80       - const: usb
81
82   dmas:
83     minItems: 2
84     maxItems: 4
85
86   dma-names:
87     minItems: 2
88     items:
89       - const: ch0
90       - const: ch1
91       - const: ch2
92       - const: ch3
93
94   dr_mode: true
95
96   power-domains:
97     maxItems: 1
98
99   resets:
100     minItems: 1
101     items:
102       - description: USB 2.0 host
103       - description: USB 2.0 peripheral
104
105 required:
106   - compatible
107   - reg
108   - clocks
109   - interrupts
110
111 additionalProperties: false
112
113 examples:
114   - |
115     #include <dt-bindings/clock/r8a7790-cpg-mssr.h>
116     #include <dt-bindings/interrupt-controller/arm-gic.h>
117     #include <dt-bindings/power/r8a7790-sysc.h>
118
119     usbhs: usb@e6590000 {
120         compatible = "renesas,usbhs-r8a7790", "renesas,rcar-gen2-usbhs";
121         reg = <0xe6590000 0x100>;
122         interrupts = <GIC_SPI 107 IRQ_TYPE_LEVEL_HIGH>;
123         clocks = <&cpg CPG_MOD 704>;
124     };