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
7f3ca745dSBenjamin Gaignardtitle: DesignWare HS OTG USB 2.0 controller Bindings
8f3ca745dSBenjamin Gaignard
9f3ca745dSBenjamin Gaignardmaintainers:
10f3ca745dSBenjamin Gaignard  - Rob Herring <robh@kernel.org>
11f3ca745dSBenjamin Gaignard
12f3ca745dSBenjamin Gaignardproperties:
13f3ca745dSBenjamin Gaignard  compatible:
14f3ca745dSBenjamin Gaignard    oneOf:
15f3ca745dSBenjamin Gaignard      - const: brcm,bcm2835-usb
16f3ca745dSBenjamin Gaignard      - const: hisilicon,hi6220-usb
17f3ca745dSBenjamin Gaignard      - items:
18f3ca745dSBenjamin Gaignard          - const: rockchip,rk3066-usb
19f3ca745dSBenjamin Gaignard          - const: snps,dwc2
20f3ca745dSBenjamin Gaignard      - items:
2195b18f28SJohan Jonker          - enum:
2295b18f28SJohan Jonker              - rockchip,px30-usb
2395b18f28SJohan Jonker              - rockchip,rk3036-usb
2495b18f28SJohan Jonker              - rockchip,rk3188-usb
2595b18f28SJohan Jonker              - rockchip,rk3228-usb
2695b18f28SJohan Jonker              - rockchip,rk3288-usb
2795b18f28SJohan Jonker              - rockchip,rk3328-usb
287334c822SJohan Jonker              - rockchip,rk3368-usb
2995b18f28SJohan Jonker              - rockchip,rv1108-usb
30f3ca745dSBenjamin Gaignard          - const: rockchip,rk3066-usb
31f3ca745dSBenjamin Gaignard          - const: snps,dwc2
32f3ca745dSBenjamin Gaignard      - const: lantiq,arx100-usb
33f3ca745dSBenjamin Gaignard      - const: lantiq,xrx200-usb
34f3ca745dSBenjamin Gaignard      - items:
3528d5ee04SNeil Armstrong          - enum:
3628d5ee04SNeil Armstrong              - amlogic,meson8-usb
3728d5ee04SNeil Armstrong              - amlogic,meson8b-usb
3828d5ee04SNeil Armstrong              - amlogic,meson-gxbb-usb
3928d5ee04SNeil Armstrong              - amlogic,meson-g12a-usb
40f3ca745dSBenjamin Gaignard          - const: snps,dwc2
41f3ca745dSBenjamin Gaignard      - const: amcc,dwc-otg
42704c70faSChristian Lamparter      - const: apm,apm82181-dwc-otg
43f3ca745dSBenjamin Gaignard      - const: snps,dwc2
44f3ca745dSBenjamin Gaignard      - const: st,stm32f4x9-fsotg
45f3ca745dSBenjamin Gaignard      - const: st,stm32f4x9-hsotg
46f3ca745dSBenjamin Gaignard      - const: st,stm32f7-hsotg
47d4985011SAmelie Delaunay      - const: st,stm32mp15-fsotg
481a21240dSBenjamin Gaignard      - items:
49d4985011SAmelie Delaunay          - const: st,stm32mp15-hsotg
501a21240dSBenjamin Gaignard          - const: snps,dwc2
51f3ca745dSBenjamin Gaignard      - const: samsung,s3c6400-hsotg
52f3ca745dSBenjamin Gaignard
53f3ca745dSBenjamin Gaignard  reg:
54f3ca745dSBenjamin Gaignard    maxItems: 1
55f3ca745dSBenjamin Gaignard
56f3ca745dSBenjamin Gaignard  interrupts:
57f3ca745dSBenjamin Gaignard    maxItems: 1
58f3ca745dSBenjamin Gaignard
59f3ca745dSBenjamin Gaignard  clocks:
60f3ca745dSBenjamin Gaignard    maxItems: 1
61f3ca745dSBenjamin Gaignard
62f3ca745dSBenjamin Gaignard  clock-names:
63f3ca745dSBenjamin Gaignard    items:
64f3ca745dSBenjamin Gaignard      - const: otg
65f3ca745dSBenjamin Gaignard
66f3ca745dSBenjamin Gaignard  resets:
67f3ca745dSBenjamin Gaignard    items:
68f3ca745dSBenjamin Gaignard      - description: common reset
69f3ca745dSBenjamin Gaignard      - description: ecc reset
70f3ca745dSBenjamin Gaignard    minItems: 1
71f3ca745dSBenjamin Gaignard
72f3ca745dSBenjamin Gaignard  reset-names:
73f3ca745dSBenjamin Gaignard    items:
74f3ca745dSBenjamin Gaignard      - const: dwc2
75f3ca745dSBenjamin Gaignard      - const: dwc2-ecc
76f3ca745dSBenjamin Gaignard    minItems: 1
77f3ca745dSBenjamin Gaignard
78f3ca745dSBenjamin Gaignard  phys:
79f3ca745dSBenjamin Gaignard    maxItems: 1
80f3ca745dSBenjamin Gaignard
81f3ca745dSBenjamin Gaignard  phy-names:
82f3ca745dSBenjamin Gaignard    const: usb2-phy
83f3ca745dSBenjamin Gaignard
840b714009SJohan Jonker  power-domains:
850b714009SJohan Jonker    maxItems: 1
860b714009SJohan Jonker
87f3ca745dSBenjamin Gaignard  vbus-supply:
88f3ca745dSBenjamin Gaignard    description: reference to the VBUS regulator. Depending on the current mode
89f3ca745dSBenjamin Gaignard      this is enabled (in "host" mode") or disabled (in "peripheral" mode). The
90f3ca745dSBenjamin Gaignard      regulator is updated if the controller is configured in "otg" mode and the
91f3ca745dSBenjamin Gaignard      status changes between "host" and "peripheral".
92f3ca745dSBenjamin Gaignard
93f3ca745dSBenjamin Gaignard  vusb_d-supply:
94f3ca745dSBenjamin Gaignard    description: phandle to voltage regulator of digital section,
95f3ca745dSBenjamin Gaignard
96f3ca745dSBenjamin Gaignard  vusb_a-supply:
97f3ca745dSBenjamin Gaignard    description: phandle to voltage regulator of analog section.
98f3ca745dSBenjamin Gaignard
991a21240dSBenjamin Gaignard  usb33d-supply:
100d4985011SAmelie Delaunay    description: reference to the VBUS and ID sensing comparators supply, in
101d4985011SAmelie Delaunay      order to perform OTG operation, used on STM32MP15 SoCs.
102d4985011SAmelie Delaunay
103f3ca745dSBenjamin Gaignard  dr_mode:
104f3ca745dSBenjamin Gaignard    enum: [host, peripheral, otg]
105f3ca745dSBenjamin Gaignard
10614793faeSAmelie Delaunay  usb-role-switch:
10714793faeSAmelie Delaunay    $ref: /schemas/types.yaml#/definitions/flag
10814793faeSAmelie Delaunay    description: Support role switch.
10914793faeSAmelie Delaunay
110f3ca745dSBenjamin Gaignard  g-rx-fifo-size:
111f3ca745dSBenjamin Gaignard    $ref: /schemas/types.yaml#/definitions/uint32
112f3ca745dSBenjamin Gaignard    description: size of rx fifo size in gadget mode.
113f3ca745dSBenjamin Gaignard
114f3ca745dSBenjamin Gaignard  g-np-tx-fifo-size:
115f3ca745dSBenjamin Gaignard    $ref: /schemas/types.yaml#/definitions/uint32
116f3ca745dSBenjamin Gaignard    description: size of non-periodic tx fifo size in gadget mode.
117f3ca745dSBenjamin Gaignard
118f3ca745dSBenjamin Gaignard  g-tx-fifo-size:
119f3ca745dSBenjamin Gaignard    $ref: /schemas/types.yaml#/definitions/uint32-array
120f3ca745dSBenjamin Gaignard    description: size of periodic tx fifo per endpoint (except ep0) in gadget mode.
121f3ca745dSBenjamin Gaignard
122f3ca745dSBenjamin Gaignard  snps,need-phy-for-wake:
123f3ca745dSBenjamin Gaignard    $ref: /schemas/types.yaml#/definitions/flag
124f516fb70SRob Herring    description: If present indicates that the phy needs to be left on for
125f516fb70SRob Herring      remote wakeup during suspend.
126f3ca745dSBenjamin Gaignard
127f3ca745dSBenjamin Gaignard  snps,reset-phy-on-wake:
128f3ca745dSBenjamin Gaignard    $ref: /schemas/types.yaml#/definitions/flag
129f516fb70SRob Herring    description: If present indicates that we need to reset the PHY when we
130f516fb70SRob Herring      detect a wakeup. This is due to a hardware errata.
131f3ca745dSBenjamin Gaignard
132f3ca745dSBenjamin Gaignardrequired:
133f3ca745dSBenjamin Gaignard  - compatible
134f3ca745dSBenjamin Gaignard  - reg
135f3ca745dSBenjamin Gaignard  - interrupts
136f3ca745dSBenjamin Gaignard  - clocks
137f3ca745dSBenjamin Gaignard  - clock-names
138f3ca745dSBenjamin Gaignard
139f3ca745dSBenjamin GaignardadditionalProperties: false
140f3ca745dSBenjamin Gaignard
141f3ca745dSBenjamin Gaignardexamples:
142f3ca745dSBenjamin Gaignard  - |
143f3ca745dSBenjamin Gaignard      usb@101c0000 {
144f3ca745dSBenjamin Gaignard        compatible = "rockchip,rk3066-usb", "snps,dwc2";
145f3ca745dSBenjamin Gaignard        reg = <0x10180000 0x40000>;
146f3ca745dSBenjamin Gaignard        interrupts = <18>;
147f3ca745dSBenjamin Gaignard        clocks = <&usb_otg_ahb_clk>;
148f3ca745dSBenjamin Gaignard        clock-names = "otg";
149f3ca745dSBenjamin Gaignard        phys = <&usbphy>;
150f3ca745dSBenjamin Gaignard        phy-names = "usb2-phy";
151f3ca745dSBenjamin Gaignard      };
152f3ca745dSBenjamin Gaignard
153f3ca745dSBenjamin Gaignard...
154