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