Linux kernel mirror (for testing)
git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel
os
linux
1# SPDX-License-Identifier: GPL-2.0
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/usb/generic-ohci.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: USB OHCI Controller
8
9maintainers:
10 - Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11
12properties:
13 compatible:
14 oneOf:
15 - items:
16 - enum:
17 - allwinner,sun4i-a10-ohci
18 - allwinner,sun50i-a100-ohci
19 - allwinner,sun50i-a64-ohci
20 - allwinner,sun50i-h6-ohci
21 - allwinner,sun50i-h616-ohci
22 - allwinner,sun55i-a523-ohci
23 - allwinner,sun5i-a13-ohci
24 - allwinner,sun6i-a31-ohci
25 - allwinner,sun7i-a20-ohci
26 - allwinner,sun8i-a23-ohci
27 - allwinner,sun8i-a83t-ohci
28 - allwinner,sun8i-h3-ohci
29 - allwinner,sun8i-r40-ohci
30 - allwinner,sun8i-v3s-ohci
31 - allwinner,sun9i-a80-ohci
32 - allwinner,sun20i-d1-ohci
33 - brcm,bcm3384-ohci
34 - brcm,bcm63268-ohci
35 - brcm,bcm6328-ohci
36 - brcm,bcm6358-ohci
37 - brcm,bcm6362-ohci
38 - brcm,bcm6368-ohci
39 - brcm,bcm7125-ohci
40 - brcm,bcm7346-ohci
41 - brcm,bcm7358-ohci
42 - brcm,bcm7360-ohci
43 - brcm,bcm7362-ohci
44 - brcm,bcm7420-ohci
45 - brcm,bcm7425-ohci
46 - brcm,bcm7435-ohci
47 - hpe,gxp-ohci
48 - ibm,476gtr-ohci
49 - ingenic,jz4740-ohci
50 - rockchip,rk3588-ohci
51 - snps,hsdk-v1.0-ohci
52 - const: generic-ohci
53 - enum:
54 - generic-ohci
55 - ti,ohci-omap3
56 - items:
57 - enum:
58 - atmel,at91rm9200-ohci
59 - cavium,octeon-6335-ohci
60 - nintendo,hollywood-usb-ohci
61 - nxp,ohci-nxp
62 - st,spear600-ohci
63 - const: usb-ohci
64
65 reg:
66 maxItems: 1
67
68 dma-coherent: true
69
70 interrupts:
71 maxItems: 1
72
73 resets:
74 minItems: 1
75 maxItems: 2
76
77 clocks:
78 minItems: 1
79 maxItems: 4
80 description: |
81 In case the Renesas R-Car Gen3 SoCs:
82 - if a host only channel: first clock should be host.
83 - if a USB DRD channel: first clock should be host and second
84 one should be peripheral
85
86 power-domains:
87 maxItems: 1
88
89 big-endian:
90 $ref: /schemas/types.yaml#/definitions/flag
91 description:
92 Set this flag for HCDs with big endian descriptors and big
93 endian registers.
94
95 big-endian-desc:
96 $ref: /schemas/types.yaml#/definitions/flag
97 description:
98 Set this flag for HCDs with big endian descriptors.
99
100 big-endian-regs:
101 $ref: /schemas/types.yaml#/definitions/flag
102 description:
103 Set this flag for HCDs with big endian registers.
104
105 remote-wakeup-connected:
106 $ref: /schemas/types.yaml#/definitions/flag
107 description:
108 Remote wakeup is wired on the platform.
109
110 no-big-frame-no:
111 $ref: /schemas/types.yaml#/definitions/flag
112 description:
113 Set if frame_no lives in bits [15:0] of HCCA
114
115 num-ports:
116 $ref: /schemas/types.yaml#/definitions/uint32
117 description:
118 Overrides the detected port count
119
120 phys:
121 minItems: 1
122 maxItems: 3
123
124 phy-names:
125 const: usb
126
127 iommus:
128 maxItems: 1
129
130 dr_mode:
131 enum:
132 - host
133 - otg
134
135 transceiver:
136 $ref: /schemas/types.yaml#/definitions/phandle
137 description:
138 The associated ISP1301 device. Necessary for the UDC controller for
139 connecting to the USB physical layer.
140
141 atmel,vbus-gpio:
142 description:
143 GPIO used to control or sense the USB VBUS power. Each entry
144 represents a VBUS-related GPIO; count and order may vary by hardware.
145 Entries follow standard GPIO specifier format. A value of 0 indicates
146 an unused or unavailable VBUS signal.
147 minItems: 1
148 maxItems: 3
149
150 atmel,oc-gpio:
151 description:
152 GPIO used to signal USB overcurrent condition. Each entry represents
153 an OC detection GPIO; count and order may vary by hardware. Entries
154 follow standard GPIO specifier format. A value of 0 indicates an
155 unused or unavailable OC signal.
156 minItems: 1
157 maxItems: 3
158
159required:
160 - compatible
161 - reg
162 - interrupts
163
164allOf:
165 - $ref: usb-hcd.yaml
166 - if:
167 properties:
168 compatible:
169 contains:
170 const: atmel,at91rm9200-ohci
171 then:
172 properties:
173 clock-names:
174 items:
175 - const: ohci_clk
176 - const: hclk
177 - const: uhpck
178
179 required:
180 - clocks
181 - clock-names
182
183 else:
184 properties:
185 atmel,vbus-gpio: false
186 atmel,oc-gpio: false
187
188 - if:
189 not:
190 properties:
191 compatible:
192 contains:
193 const: nxp,ohci-nxp
194 then:
195 properties:
196 transceiver: false
197 - if:
198 properties:
199 compatible:
200 contains:
201 const: rockchip,rk3588-ohci
202 then:
203 properties:
204 clocks:
205 minItems: 4
206 else:
207 properties:
208 clocks:
209 minItems: 1
210 maxItems: 3
211
212unevaluatedProperties: false
213
214examples:
215 - |
216 ohci0: usb@1c14400 {
217 compatible = "allwinner,sun4i-a10-ohci", "generic-ohci";
218 reg = <0x01c14400 0x100>;
219 interrupts = <64>;
220 clocks = <&usb_clk 6>, <&ahb_gates 2>;
221 phys = <&usbphy 1>;
222 phy-names = "usb";
223 };
224
225...