1f3ca745dSBenjamin Gaignard# SPDX-License-Identifier: GPL-2.0
2f3ca745dSBenjamin Gaignard%YAML 1.2
3f3ca745dSBenjamin Gaignard---
4f3ca745dSBenjamin Gaignard$id: http://devicetree.org/schemas/usb/dwc2.yaml#
5f3ca745dSBenjamin Gaignard$schema: http://devicetree.org/meta-schemas/core.yaml#
6f3ca745dSBenjamin Gaignard
7*84e85359SKrzysztof Kozlowskititle: DesignWare HS OTG USB 2.0 controller
8f3ca745dSBenjamin Gaignard
9f3ca745dSBenjamin Gaignardmaintainers:
10f3ca745dSBenjamin Gaignard  - Rob Herring <robh@kernel.org>
11f3ca745dSBenjamin Gaignard
12bb88dbbeSFabrice GasnierallOf:
13bb88dbbeSFabrice Gasnier  - $ref: usb-drd.yaml#
1454bd6c9aSFabrice Gasnier  - $ref: usb-hcd.yaml#
15bb88dbbeSFabrice Gasnier
16f3ca745dSBenjamin Gaignardproperties:
17f3ca745dSBenjamin Gaignard  compatible:
18f3ca745dSBenjamin Gaignard    oneOf:
19f3ca745dSBenjamin Gaignard      - const: brcm,bcm2835-usb
20f3ca745dSBenjamin Gaignard      - const: hisilicon,hi6220-usb
219cd6576fS周琰杰 (Zhou Yanjie)      - const: ingenic,jz4775-otg
229cd6576fS周琰杰 (Zhou Yanjie)      - const: ingenic,jz4780-otg
239cd6576fS周琰杰 (Zhou Yanjie)      - const: ingenic,x1000-otg
249cd6576fS周琰杰 (Zhou Yanjie)      - const: ingenic,x1600-otg
259cd6576fS周琰杰 (Zhou Yanjie)      - const: ingenic,x1700-otg
269cd6576fS周琰杰 (Zhou Yanjie)      - const: ingenic,x1830-otg
279cd6576fS周琰杰 (Zhou Yanjie)      - const: ingenic,x2000-otg
28f3ca745dSBenjamin Gaignard      - items:
29f3ca745dSBenjamin Gaignard          - const: rockchip,rk3066-usb
30f3ca745dSBenjamin Gaignard          - const: snps,dwc2
31f3ca745dSBenjamin Gaignard      - items:
3295b18f28SJohan Jonker          - enum:
3395b18f28SJohan Jonker              - rockchip,px30-usb
3495b18f28SJohan Jonker              - rockchip,rk3036-usb
355032b269SJohan Jonker              - rockchip,rk3128-usb
3695b18f28SJohan Jonker              - rockchip,rk3188-usb
3795b18f28SJohan Jonker              - rockchip,rk3228-usb
3895b18f28SJohan Jonker              - rockchip,rk3288-usb
3956d42614STobias Schramm              - rockchip,rk3308-usb
4095b18f28SJohan Jonker              - rockchip,rk3328-usb
417334c822SJohan Jonker              - rockchip,rk3368-usb
4295b18f28SJohan Jonker              - rockchip,rv1108-usb
43f3ca745dSBenjamin Gaignard          - const: rockchip,rk3066-usb
44f3ca745dSBenjamin Gaignard          - const: snps,dwc2
45f3ca745dSBenjamin Gaignard      - const: lantiq,arx100-usb
4661dd457cSLinus Walleij      - const: lantiq,ase-usb
4761dd457cSLinus Walleij      - const: lantiq,danube-usb
48f3ca745dSBenjamin Gaignard      - const: lantiq,xrx200-usb
4961dd457cSLinus Walleij      - const: lantiq,xrx300-usb
50f3ca745dSBenjamin Gaignard      - items:
5128d5ee04SNeil Armstrong          - enum:
5228d5ee04SNeil Armstrong              - amlogic,meson8-usb
5328d5ee04SNeil Armstrong              - amlogic,meson8b-usb
5428d5ee04SNeil Armstrong              - amlogic,meson-gxbb-usb
5528d5ee04SNeil Armstrong              - amlogic,meson-g12a-usb
56448841d9SKrzysztof Kozlowski              - intel,socfpga-agilex-hsotg
57f3ca745dSBenjamin Gaignard          - const: snps,dwc2
58f3ca745dSBenjamin Gaignard      - const: amcc,dwc-otg
59704c70faSChristian Lamparter      - const: apm,apm82181-dwc-otg
60f3ca745dSBenjamin Gaignard      - const: snps,dwc2
61f3ca745dSBenjamin Gaignard      - const: st,stm32f4x9-fsotg
62f3ca745dSBenjamin Gaignard      - const: st,stm32f4x9-hsotg
63f3ca745dSBenjamin Gaignard      - const: st,stm32f7-hsotg
64d4985011SAmelie Delaunay      - const: st,stm32mp15-fsotg
651a21240dSBenjamin Gaignard      - items:
66d4985011SAmelie Delaunay          - const: st,stm32mp15-hsotg
671a21240dSBenjamin Gaignard          - const: snps,dwc2
68f3ca745dSBenjamin Gaignard      - const: samsung,s3c6400-hsotg
69728390fcSDinh Nguyen      - const: intel,socfpga-agilex-hsotg
70f3ca745dSBenjamin Gaignard
71f3ca745dSBenjamin Gaignard  reg:
72f3ca745dSBenjamin Gaignard    maxItems: 1
73f3ca745dSBenjamin Gaignard
74f3ca745dSBenjamin Gaignard  interrupts:
75f3ca745dSBenjamin Gaignard    maxItems: 1
76f3ca745dSBenjamin Gaignard
77f3ca745dSBenjamin Gaignard  clocks:
78f3ca745dSBenjamin Gaignard    maxItems: 1
79f3ca745dSBenjamin Gaignard
80f3ca745dSBenjamin Gaignard  clock-names:
81f3ca745dSBenjamin Gaignard    items:
82f3ca745dSBenjamin Gaignard      - const: otg
83f3ca745dSBenjamin Gaignard
844b9ff41fSKrzysztof Kozlowski  disable-over-current:
854b9ff41fSKrzysztof Kozlowski    type: boolean
864b9ff41fSKrzysztof Kozlowski    description: whether to disable detection of over-current condition.
874b9ff41fSKrzysztof Kozlowski
881b5f9a04SKrzysztof Kozlowski  iommus:
891b5f9a04SKrzysztof Kozlowski    maxItems: 1
901b5f9a04SKrzysztof Kozlowski
91f3ca745dSBenjamin Gaignard  resets:
92f3ca745dSBenjamin Gaignard    items:
93f3ca745dSBenjamin Gaignard      - description: common reset
94f3ca745dSBenjamin Gaignard      - description: ecc reset
95f3ca745dSBenjamin Gaignard    minItems: 1
96f3ca745dSBenjamin Gaignard
97f3ca745dSBenjamin Gaignard  reset-names:
98f3ca745dSBenjamin Gaignard    items:
99f3ca745dSBenjamin Gaignard      - const: dwc2
100f3ca745dSBenjamin Gaignard      - const: dwc2-ecc
101f3ca745dSBenjamin Gaignard    minItems: 1
102f3ca745dSBenjamin Gaignard
103f3ca745dSBenjamin Gaignard  phys:
104f3ca745dSBenjamin Gaignard    maxItems: 1
105f3ca745dSBenjamin Gaignard
106f3ca745dSBenjamin Gaignard  phy-names:
107f3ca745dSBenjamin Gaignard    const: usb2-phy
108f3ca745dSBenjamin Gaignard
1090b714009SJohan Jonker  power-domains:
1100b714009SJohan Jonker    maxItems: 1
1110b714009SJohan Jonker
112f3ca745dSBenjamin Gaignard  vbus-supply:
113f3ca745dSBenjamin Gaignard    description: reference to the VBUS regulator. Depending on the current mode
114f3ca745dSBenjamin Gaignard      this is enabled (in "host" mode") or disabled (in "peripheral" mode). The
115f3ca745dSBenjamin Gaignard      regulator is updated if the controller is configured in "otg" mode and the
116f3ca745dSBenjamin Gaignard      status changes between "host" and "peripheral".
117f3ca745dSBenjamin Gaignard
118f3ca745dSBenjamin Gaignard  vusb_d-supply:
119f3ca745dSBenjamin Gaignard    description: phandle to voltage regulator of digital section,
120f3ca745dSBenjamin Gaignard
121f3ca745dSBenjamin Gaignard  vusb_a-supply:
122f3ca745dSBenjamin Gaignard    description: phandle to voltage regulator of analog section.
123f3ca745dSBenjamin Gaignard
1241a21240dSBenjamin Gaignard  usb33d-supply:
125d4985011SAmelie Delaunay    description: reference to the VBUS and ID sensing comparators supply, in
126d4985011SAmelie Delaunay      order to perform OTG operation, used on STM32MP15 SoCs.
127d4985011SAmelie Delaunay
128bb88dbbeSFabrice Gasnier  dr_mode: true
129f3ca745dSBenjamin Gaignard
130924e2b40SFabrice Gasnier  otg-rev: true
131924e2b40SFabrice Gasnier
132924e2b40SFabrice Gasnier  hnp-disable: true
133924e2b40SFabrice Gasnier
134924e2b40SFabrice Gasnier  srp-disable: true
135924e2b40SFabrice Gasnier
136bb88dbbeSFabrice Gasnier  usb-role-switch: true
13714793faeSAmelie Delaunay
138942cdbc1SFabrice Gasnier  role-switch-default-mode: true
139942cdbc1SFabrice Gasnier
140f3ca745dSBenjamin Gaignard  g-rx-fifo-size:
141f3ca745dSBenjamin Gaignard    $ref: /schemas/types.yaml#/definitions/uint32
142f3ca745dSBenjamin Gaignard    description: size of rx fifo size in gadget mode.
143f3ca745dSBenjamin Gaignard
144f3ca745dSBenjamin Gaignard  g-np-tx-fifo-size:
145f3ca745dSBenjamin Gaignard    $ref: /schemas/types.yaml#/definitions/uint32
146f3ca745dSBenjamin Gaignard    description: size of non-periodic tx fifo size in gadget mode.
147f3ca745dSBenjamin Gaignard
148f3ca745dSBenjamin Gaignard  g-tx-fifo-size:
149f3ca745dSBenjamin Gaignard    $ref: /schemas/types.yaml#/definitions/uint32-array
150f3ca745dSBenjamin Gaignard    description: size of periodic tx fifo per endpoint (except ep0) in gadget mode.
151f3ca745dSBenjamin Gaignard
152f3ca745dSBenjamin Gaignard  snps,need-phy-for-wake:
153f3ca745dSBenjamin Gaignard    $ref: /schemas/types.yaml#/definitions/flag
154f516fb70SRob Herring    description: If present indicates that the phy needs to be left on for
155f516fb70SRob Herring      remote wakeup during suspend.
156f3ca745dSBenjamin Gaignard
157f3ca745dSBenjamin Gaignard  snps,reset-phy-on-wake:
158f3ca745dSBenjamin Gaignard    $ref: /schemas/types.yaml#/definitions/flag
159f516fb70SRob Herring    description: If present indicates that we need to reset the PHY when we
160f516fb70SRob Herring      detect a wakeup. This is due to a hardware errata.
161f3ca745dSBenjamin Gaignard
162ba67723fSFabrice Gasnier  port:
163ba67723fSFabrice Gasnier    description:
164ba67723fSFabrice Gasnier      Any connector to the data bus of this controller should be modelled
165ba67723fSFabrice Gasnier      using the OF graph bindings specified, if the "usb-role-switch"
166ba67723fSFabrice Gasnier      property is used.
167ba67723fSFabrice Gasnier    $ref: /schemas/graph.yaml#/properties/port
168ba67723fSFabrice Gasnier
16954bd6c9aSFabrice Gasnier  tpl-support: true
17054bd6c9aSFabrice Gasnier
171ba67723fSFabrice Gasnierdependencies:
172ba67723fSFabrice Gasnier  port: [ usb-role-switch ]
173942cdbc1SFabrice Gasnier  role-switch-default-mode: [ usb-role-switch ]
174ba67723fSFabrice Gasnier
175f3ca745dSBenjamin Gaignardrequired:
176f3ca745dSBenjamin Gaignard  - compatible
177f3ca745dSBenjamin Gaignard  - reg
178f3ca745dSBenjamin Gaignard  - interrupts
179f3ca745dSBenjamin Gaignard  - clocks
180f3ca745dSBenjamin Gaignard  - clock-names
181f3ca745dSBenjamin Gaignard
182f3ca745dSBenjamin GaignardadditionalProperties: false
183f3ca745dSBenjamin Gaignard
184f3ca745dSBenjamin Gaignardexamples:
185f3ca745dSBenjamin Gaignard  - |
186f3ca745dSBenjamin Gaignard      usb@101c0000 {
187f3ca745dSBenjamin Gaignard        compatible = "rockchip,rk3066-usb", "snps,dwc2";
188f3ca745dSBenjamin Gaignard        reg = <0x10180000 0x40000>;
189f3ca745dSBenjamin Gaignard        interrupts = <18>;
190f3ca745dSBenjamin Gaignard        clocks = <&usb_otg_ahb_clk>;
191f3ca745dSBenjamin Gaignard        clock-names = "otg";
192f3ca745dSBenjamin Gaignard        phys = <&usbphy>;
193f3ca745dSBenjamin Gaignard        phy-names = "usb2-phy";
194f3ca745dSBenjamin Gaignard      };
195f3ca745dSBenjamin Gaignard
196f3ca745dSBenjamin Gaignard...
197