]> git.ipfire.org Git - people/ms/linux.git/blob - Documentation/devicetree/bindings/usb/dwc2.yaml
Merge tag 'usb-5.19-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb
[people/ms/linux.git] / Documentation / devicetree / bindings / usb / dwc2.yaml
1 # SPDX-License-Identifier: GPL-2.0
2 %YAML 1.2
3 ---
4 $id: http://devicetree.org/schemas/usb/dwc2.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
6
7 title: DesignWare HS OTG USB 2.0 controller Bindings
8
9 maintainers:
10 - Rob Herring <robh@kernel.org>
11
12 allOf:
13 - $ref: usb-drd.yaml#
14
15 properties:
16 compatible:
17 oneOf:
18 - const: brcm,bcm2835-usb
19 - const: hisilicon,hi6220-usb
20 - const: ingenic,jz4775-otg
21 - const: ingenic,jz4780-otg
22 - const: ingenic,x1000-otg
23 - const: ingenic,x1600-otg
24 - const: ingenic,x1700-otg
25 - const: ingenic,x1830-otg
26 - const: ingenic,x2000-otg
27 - items:
28 - const: rockchip,rk3066-usb
29 - const: snps,dwc2
30 - items:
31 - enum:
32 - rockchip,px30-usb
33 - rockchip,rk3036-usb
34 - rockchip,rk3188-usb
35 - rockchip,rk3228-usb
36 - rockchip,rk3288-usb
37 - rockchip,rk3308-usb
38 - rockchip,rk3328-usb
39 - rockchip,rk3368-usb
40 - rockchip,rv1108-usb
41 - const: rockchip,rk3066-usb
42 - const: snps,dwc2
43 - const: lantiq,arx100-usb
44 - const: lantiq,xrx200-usb
45 - items:
46 - enum:
47 - amlogic,meson8-usb
48 - amlogic,meson8b-usb
49 - amlogic,meson-gxbb-usb
50 - amlogic,meson-g12a-usb
51 - intel,socfpga-agilex-hsotg
52 - const: snps,dwc2
53 - const: amcc,dwc-otg
54 - const: apm,apm82181-dwc-otg
55 - const: snps,dwc2
56 - const: st,stm32f4x9-fsotg
57 - const: st,stm32f4x9-hsotg
58 - const: st,stm32f7-hsotg
59 - const: st,stm32mp15-fsotg
60 - items:
61 - const: st,stm32mp15-hsotg
62 - const: snps,dwc2
63 - const: samsung,s3c6400-hsotg
64 - const: intel,socfpga-agilex-hsotg
65
66 reg:
67 maxItems: 1
68
69 interrupts:
70 maxItems: 1
71
72 clocks:
73 maxItems: 1
74
75 clock-names:
76 items:
77 - const: otg
78
79 disable-over-current:
80 type: boolean
81 description: whether to disable detection of over-current condition.
82
83 iommus:
84 maxItems: 1
85
86 resets:
87 items:
88 - description: common reset
89 - description: ecc reset
90 minItems: 1
91
92 reset-names:
93 items:
94 - const: dwc2
95 - const: dwc2-ecc
96 minItems: 1
97
98 phys:
99 maxItems: 1
100
101 phy-names:
102 const: usb2-phy
103
104 power-domains:
105 maxItems: 1
106
107 vbus-supply:
108 description: reference to the VBUS regulator. Depending on the current mode
109 this is enabled (in "host" mode") or disabled (in "peripheral" mode). The
110 regulator is updated if the controller is configured in "otg" mode and the
111 status changes between "host" and "peripheral".
112
113 vusb_d-supply:
114 description: phandle to voltage regulator of digital section,
115
116 vusb_a-supply:
117 description: phandle to voltage regulator of analog section.
118
119 usb33d-supply:
120 description: reference to the VBUS and ID sensing comparators supply, in
121 order to perform OTG operation, used on STM32MP15 SoCs.
122
123 dr_mode: true
124
125 otg-rev: true
126
127 hnp-disable: true
128
129 srp-disable: true
130
131 usb-role-switch: true
132
133 role-switch-default-mode: true
134
135 g-rx-fifo-size:
136 $ref: /schemas/types.yaml#/definitions/uint32
137 description: size of rx fifo size in gadget mode.
138
139 g-np-tx-fifo-size:
140 $ref: /schemas/types.yaml#/definitions/uint32
141 description: size of non-periodic tx fifo size in gadget mode.
142
143 g-tx-fifo-size:
144 $ref: /schemas/types.yaml#/definitions/uint32-array
145 description: size of periodic tx fifo per endpoint (except ep0) in gadget mode.
146
147 snps,need-phy-for-wake:
148 $ref: /schemas/types.yaml#/definitions/flag
149 description: If present indicates that the phy needs to be left on for
150 remote wakeup during suspend.
151
152 snps,reset-phy-on-wake:
153 $ref: /schemas/types.yaml#/definitions/flag
154 description: If present indicates that we need to reset the PHY when we
155 detect a wakeup. This is due to a hardware errata.
156
157 port:
158 description:
159 Any connector to the data bus of this controller should be modelled
160 using the OF graph bindings specified, if the "usb-role-switch"
161 property is used.
162 $ref: /schemas/graph.yaml#/properties/port
163
164 dependencies:
165 port: [ usb-role-switch ]
166 role-switch-default-mode: [ usb-role-switch ]
167
168 required:
169 - compatible
170 - reg
171 - interrupts
172 - clocks
173 - clock-names
174
175 additionalProperties: false
176
177 examples:
178 - |
179 usb@101c0000 {
180 compatible = "rockchip,rk3066-usb", "snps,dwc2";
181 reg = <0x10180000 0x40000>;
182 interrupts = <18>;
183 clocks = <&usb_otg_ahb_clk>;
184 clock-names = "otg";
185 phys = <&usbphy>;
186 phy-names = "usb2-phy";
187 };
188
189 ...