blob: ac5b99710332a7c263d7583b4749b03405ed52a8 [file] [log] [blame]
Tom Rini53633a82024-02-29 12:33:36 -05001# SPDX-License-Identifier: GPL-2.0
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/usb/usb251xb.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Microchip USB 2.0 Hi-Speed Hub Controller
8
9maintainers:
10 - Richard Leitner <richard.leitner@skidata.com>
11
12properties:
13 compatible:
14 enum:
15 - microchip,usb2422
16 - microchip,usb2512b
17 - microchip,usb2512bi
18 - microchip,usb2513b
19 - microchip,usb2513bi
20 - microchip,usb2514b
21 - microchip,usb2514bi
22 - microchip,usb2517
23 - microchip,usb2517i
24 - microchip,usb251xb
25
26 reg:
27 maxItems: 1
28
29 reset-gpios:
30 description: |
31 Should specify the gpio for hub reset
32
33 vdd-supply:
34 description: |
35 Should specify the phandle to the regulator supplying vdd
36
37 skip-config:
38 $ref: /schemas/types.yaml#/definitions/flag
39 description: |
40 Skip Hub configuration, but only send the USB-Attach command
41
42 vendor-id:
43 $ref: /schemas/types.yaml#/definitions/uint16
44 default: 0x0424
45 description: |
46 Set USB Vendor ID of the hub
47
48 product-id:
49 $ref: /schemas/types.yaml#/definitions/uint16
50 description: |
51 Set USB Product ID of the hub
52
53 device-id:
54 $ref: /schemas/types.yaml#/definitions/uint16
55 default: 0x0bb3
56 description: |
57 Set USB Device ID of the hub
58
59 language-id:
60 $ref: /schemas/types.yaml#/definitions/uint16
61 default: 0x0000
62 description: |
63 Set USB Language ID
64
65 manufacturer:
66 $ref: /schemas/types.yaml#/definitions/string
67 description: |
68 Set USB Manufacturer string (max 31 characters long)
69
70 product:
71 $ref: /schemas/types.yaml#/definitions/string
72 description: |
73 Set USB Product string (max 31 characters long)
74
75 serial:
76 $ref: /schemas/types.yaml#/definitions/string
77 description: |
78 Set USB Serial string (max 31 characters long)
79
80 bus-powered:
81 $ref: /schemas/types.yaml#/definitions/flag
82 description: |
83 selects between self- and bus-powered operation
84 (boolean, default is self-powered)
85
86 self-powered:
87 $ref: /schemas/types.yaml#/definitions/flag
88 description: |
89 selects between self- and bus-powered operation
90 (boolean, default is self-powered)
91
92 disable-hi-speed:
93 $ref: /schemas/types.yaml#/definitions/flag
94 description: |
95 disable USB Hi-Speed support (boolean)
96
97 multi-tt:
98 $ref: /schemas/types.yaml#/definitions/flag
99 description: |
100 selects between multi- and single-transaction-translator
101 (boolean, default is multi-tt)
102
103 single-tt:
104 $ref: /schemas/types.yaml#/definitions/flag
105 description: |
106 selects between multi- and single-transaction-translator
107 (boolean, default is multi-tt)
108
109 disable-eop:
110 $ref: /schemas/types.yaml#/definitions/flag
111 description: |
112 disable End of Packet generation in full-speed mode (boolean)
113
114 ganged-sensing:
115 $ref: /schemas/types.yaml#/definitions/flag
116 description: |
117 select over-current sense type in self-powered mode
118 (boolean, default is individual)
119
120 individual-sensing:
121 $ref: /schemas/types.yaml#/definitions/flag
122 description: |
123 select over-current sense type in self-powered mode
124 (boolean, default is individual)
125
126 ganged-port-switching:
127 $ref: /schemas/types.yaml#/definitions/flag
128 description: |
129 select port power switching mode (boolean, default is individual)
130
131 individual-port-switching:
132 $ref: /schemas/types.yaml#/definitions/flag
133 description: |
134 select port power switching mode (boolean, default is individual)
135
136 dynamic-power-switching:
137 $ref: /schemas/types.yaml#/definitions/flag
138 description: |
139 enable auto-switching from self- to bus-powered operation if the
140 local power source is removed or unavailable (boolean)
141
142 oc-delay-us:
143 enum: [100, 4000, 8000, 16000]
144 default: 8000
145 description: |
146 Delay time (in microseconds) for filtering the over-current sense
147 inputs. If an invalid value is given, the default is used instead.
148
149 compound-device:
150 $ref: /schemas/types.yaml#/definitions/flag
151 description: |
152 indicate the hub is part of a compound device (boolean)
153
154 port-mapping-mode:
155 $ref: /schemas/types.yaml#/definitions/flag
156 description: |
157 enable port mapping mode (boolean)
158
159 led-usb-mode:
160 $ref: /schemas/types.yaml#/definitions/flag
161 description: |
162 led usb/speed indication mode selection (boolean, default is speed mode)
163
164 led-speed-mode:
165 $ref: /schemas/types.yaml#/definitions/flag
166 description: |
167 led usb/speed indication mode selection (boolean, default is speed mode)
168
169 string-support:
170 $ref: /schemas/types.yaml#/definitions/flag
171 description: |
172 enable string descriptor support (required for manufacturer, product
173 and serial string configuration)
174
175 non-removable-ports:
176 $ref: /schemas/types.yaml#/definitions/uint8-array
177 description: |
178 Should specify the ports which have a non-removable device connected.
179
180 sp-disabled-ports:
181 $ref: /schemas/types.yaml#/definitions/uint8-array
182 description: |
183 Specifies the ports which will be self-power disabled
184
185 bp-disabled-ports:
186 $ref: /schemas/types.yaml#/definitions/uint8-array
187 description: |
188 Specifies the ports which will be bus-power disabled
189
190 sp-max-total-current-microamp:
191 maximum: 100000
192 default: 1000
193 description: |
194 Specifies max current consumed by the hub from VBUS when
195 operating in self-powered hub. It includes the hub silicon
196 along with all associated circuitry including a permanently
197 attached peripheral.
198
199 bp-max-total-current-microamp:
200 maximum: 510000
201 default: 100000
202 description: |
203 Specifies max current consumed by the hub from VBUS when
204 operating in self-powered hub. It includes the hub silicon
205 along with all associated circuitry including a permanently
206 attached peripheral.
207
208 sp-max-removable-current-microamp:
209 maximum: 100000
210 default: 1000
211 description: |
212 Specifies max current consumed by the hub from VBUS when
213 operating in self-powered hub. It includes the hub silicon
214 along with all associated circuitry excluding a permanently
215 attached peripheral.
216
217 bp-max-removable-current-microamp:
218 maximum: 510000
219 default: 100000
220 description: |
221 Specifies max current consumed by the hub from VBUS when
222 operating in self-powered hub. It includes the hub silicon
223 along with all associated circuitry excluding a permanently
224 attached peripheral.
225
226 power-on-time-ms:
227 maximum: 510
228 default: 100
229 description: |
230 Specifies the time it takes from the time the host initiates the
231 power-on sequence to a port until the port has adequate power.
232
233 swap-dx-lanes:
234 $ref: /schemas/types.yaml#/definitions/uint32-array
235 description: |
236 Specifies the ports which will swap the differential-pair (D+/D-),
237 default is not-swapped.
238
239additionalProperties: false
240
241required:
242 - compatible
243 - reg
244
245examples:
246 - |
247 #include <dt-bindings/gpio/gpio.h>
248
249 i2c {
250 #address-cells = <1>;
251 #size-cells = <0>;
252
253 usb-hub@2c {
254 compatible = "microchip,usb2512b";
255 reg = <0x2c>;
256 reset-gpios = <&gpio1 4 GPIO_ACTIVE_LOW>;
257 };
258
259 usb-hub@2d {
260 compatible = "microchip,usb2514b";
261 reg = <0x2d>;
262 vendor-id = /bits/ 16 <0x0000>;
263 product-id = /bits/ 16 <0x0000>;
264 string-support;
265 manufacturer = "Foo";
266 product = "Foo-Bar";
267 serial = "1234567890A";
268 /* correct misplaced usb connectors on port 1,2 */
269 swap-dx-lanes = <1 2>;
270 };
271 };