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 15properties: 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 164dependencies: 165 port: [ usb-role-switch ] 166 role-switch-default-mode: [ usb-role-switch ] 167 168required: 169 - compatible 170 - reg 171 - interrupts 172 - clocks 173 - clock-names 174 175additionalProperties: false 176 177examples: 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... 190