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