arm64: dts: qcom: sm8550: add TRNG node
[linux-modified.git] / Documentation / devicetree / bindings / usb / usb251xb.yaml
1 # 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
7 title: Microchip USB 2.0 Hi-Speed Hub Controller
8
9 maintainers:
10   - Richard Leitner <richard.leitner@skidata.com>
11
12 properties:
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
239 additionalProperties: false
240
241 required:
242   - compatible
243   - reg
244
245 examples:
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     };