Merge tag 'x86-cleanups-2020-06-01' of git://git.kernel.org/pub/scm/linux/kernel...
[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-r8a7743  # RZ/G1M
26               - renesas,usbhs-r8a7744  # RZ/G1N
27               - renesas,usbhs-r8a7745  # RZ/G1E
28               - renesas,usbhs-r8a77470 # RZ/G1C
29               - renesas,usbhs-r8a7790  # R-Car H2
30               - renesas,usbhs-r8a7791  # R-Car M2-W
31               - renesas,usbhs-r8a7792  # R-Car V2H
32               - renesas,usbhs-r8a7793  # R-Car M2-N
33               - renesas,usbhs-r8a7794  # R-Car E2
34           - const: renesas,rcar-gen2-usbhs
35
36       - items:
37           - enum:
38               - renesas,usbhs-r8a774a1 # RZ/G2M
39               - renesas,usbhs-r8a774b1 # RZ/G2N
40               - renesas,usbhs-r8a774c0 # RZ/G2E
41               - renesas,usbhs-r8a7795  # R-Car H3
42               - renesas,usbhs-r8a7796  # R-Car M3-W
43               - renesas,usbhs-r8a77961 # R-Car M3-W+
44               - renesas,usbhs-r8a77965 # R-Car M3-N
45               - renesas,usbhs-r8a77990 # R-Car E3
46               - renesas,usbhs-r8a77995 # R-Car D3
47           - const: renesas,rcar-gen3-usbhs
48
49   reg:
50     maxItems: 1
51
52   clocks:
53     minItems: 1
54     maxItems: 3
55     items:
56       - description: USB 2.0 host
57       - description: USB 2.0 peripheral
58       - description: USB 2.0 clock selector
59
60   interrupts:
61     maxItems: 1
62
63   renesas,buswait:
64     $ref: /schemas/types.yaml#/definitions/uint32
65     description: |
66       Integer to use BUSWAIT register.
67
68   renesas,enable-gpio:
69     description: |
70       gpio specifier to check GPIO determining if USB function should be
71       enabled.
72
73   phys:
74     maxItems: 1
75     items:
76       - description: phandle + phy specifier pair.
77
78   phy-names:
79     maxItems: 1
80     items:
81       - const: usb
82
83   dmas:
84     minItems: 2
85     maxItems: 4
86
87   dma-names:
88     minItems: 2
89     maxItems: 4
90     items:
91       - const: ch0
92       - const: ch1
93       - const: ch2
94       - const: ch3
95
96   dr_mode: true
97
98   power-domains:
99     maxItems: 1
100
101   resets:
102     minItems: 1
103     maxItems: 2
104     items:
105       - description: USB 2.0 host
106       - description: USB 2.0 peripheral
107
108 required:
109   - compatible
110   - reg
111   - clocks
112   - interrupts
113
114 additionalProperties: false
115
116 examples:
117   - |
118     #include <dt-bindings/clock/r8a7790-cpg-mssr.h>
119     #include <dt-bindings/interrupt-controller/arm-gic.h>
120     #include <dt-bindings/power/r8a7790-sysc.h>
121
122     usbhs: usb@e6590000 {
123         compatible = "renesas,usbhs-r8a7790", "renesas,rcar-gen2-usbhs";
124         reg = <0 0xe6590000 0 0x100>;
125         interrupts = <GIC_SPI 107 IRQ_TYPE_LEVEL_HIGH>;
126         clocks = <&cpg CPG_MOD 704>;
127     };