162306a36Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0 262306a36Sopenharmony_ci%YAML 1.2 362306a36Sopenharmony_ci--- 462306a36Sopenharmony_ci$id: http://devicetree.org/schemas/usb/dwc2.yaml# 562306a36Sopenharmony_ci$schema: http://devicetree.org/meta-schemas/core.yaml# 662306a36Sopenharmony_ci 762306a36Sopenharmony_cititle: DesignWare HS OTG USB 2.0 controller 862306a36Sopenharmony_ci 962306a36Sopenharmony_cimaintainers: 1062306a36Sopenharmony_ci - Rob Herring <robh@kernel.org> 1162306a36Sopenharmony_ci 1262306a36Sopenharmony_ciallOf: 1362306a36Sopenharmony_ci - $ref: usb-drd.yaml# 1462306a36Sopenharmony_ci - $ref: usb-hcd.yaml# 1562306a36Sopenharmony_ci 1662306a36Sopenharmony_ciproperties: 1762306a36Sopenharmony_ci compatible: 1862306a36Sopenharmony_ci oneOf: 1962306a36Sopenharmony_ci - const: brcm,bcm2835-usb 2062306a36Sopenharmony_ci - const: hisilicon,hi6220-usb 2162306a36Sopenharmony_ci - const: ingenic,jz4775-otg 2262306a36Sopenharmony_ci - const: ingenic,jz4780-otg 2362306a36Sopenharmony_ci - const: ingenic,x1000-otg 2462306a36Sopenharmony_ci - const: ingenic,x1600-otg 2562306a36Sopenharmony_ci - const: ingenic,x1700-otg 2662306a36Sopenharmony_ci - const: ingenic,x1830-otg 2762306a36Sopenharmony_ci - const: ingenic,x2000-otg 2862306a36Sopenharmony_ci - items: 2962306a36Sopenharmony_ci - const: rockchip,rk3066-usb 3062306a36Sopenharmony_ci - const: snps,dwc2 3162306a36Sopenharmony_ci - items: 3262306a36Sopenharmony_ci - enum: 3362306a36Sopenharmony_ci - rockchip,px30-usb 3462306a36Sopenharmony_ci - rockchip,rk3036-usb 3562306a36Sopenharmony_ci - rockchip,rk3128-usb 3662306a36Sopenharmony_ci - rockchip,rk3188-usb 3762306a36Sopenharmony_ci - rockchip,rk3228-usb 3862306a36Sopenharmony_ci - rockchip,rk3288-usb 3962306a36Sopenharmony_ci - rockchip,rk3308-usb 4062306a36Sopenharmony_ci - rockchip,rk3328-usb 4162306a36Sopenharmony_ci - rockchip,rk3368-usb 4262306a36Sopenharmony_ci - rockchip,rv1108-usb 4362306a36Sopenharmony_ci - const: rockchip,rk3066-usb 4462306a36Sopenharmony_ci - const: snps,dwc2 4562306a36Sopenharmony_ci - const: lantiq,arx100-usb 4662306a36Sopenharmony_ci - const: lantiq,ase-usb 4762306a36Sopenharmony_ci - const: lantiq,danube-usb 4862306a36Sopenharmony_ci - const: lantiq,xrx200-usb 4962306a36Sopenharmony_ci - const: lantiq,xrx300-usb 5062306a36Sopenharmony_ci - items: 5162306a36Sopenharmony_ci - enum: 5262306a36Sopenharmony_ci - amlogic,meson8-usb 5362306a36Sopenharmony_ci - amlogic,meson8b-usb 5462306a36Sopenharmony_ci - amlogic,meson-gxbb-usb 5562306a36Sopenharmony_ci - amlogic,meson-g12a-usb 5662306a36Sopenharmony_ci - amlogic,meson-a1-usb 5762306a36Sopenharmony_ci - intel,socfpga-agilex-hsotg 5862306a36Sopenharmony_ci - const: snps,dwc2 5962306a36Sopenharmony_ci - const: amcc,dwc-otg 6062306a36Sopenharmony_ci - const: apm,apm82181-dwc-otg 6162306a36Sopenharmony_ci - const: snps,dwc2 6262306a36Sopenharmony_ci - const: st,stm32f4x9-fsotg 6362306a36Sopenharmony_ci - const: st,stm32f4x9-hsotg 6462306a36Sopenharmony_ci - const: st,stm32f7-hsotg 6562306a36Sopenharmony_ci - const: st,stm32mp15-fsotg 6662306a36Sopenharmony_ci - items: 6762306a36Sopenharmony_ci - const: st,stm32mp15-hsotg 6862306a36Sopenharmony_ci - const: snps,dwc2 6962306a36Sopenharmony_ci - const: samsung,s3c6400-hsotg 7062306a36Sopenharmony_ci - const: intel,socfpga-agilex-hsotg 7162306a36Sopenharmony_ci 7262306a36Sopenharmony_ci reg: 7362306a36Sopenharmony_ci maxItems: 1 7462306a36Sopenharmony_ci 7562306a36Sopenharmony_ci interrupts: 7662306a36Sopenharmony_ci maxItems: 1 7762306a36Sopenharmony_ci 7862306a36Sopenharmony_ci clocks: 7962306a36Sopenharmony_ci minItems: 1 8062306a36Sopenharmony_ci maxItems: 2 8162306a36Sopenharmony_ci 8262306a36Sopenharmony_ci clock-names: 8362306a36Sopenharmony_ci items: 8462306a36Sopenharmony_ci - const: otg 8562306a36Sopenharmony_ci - const: utmi 8662306a36Sopenharmony_ci minItems: 1 8762306a36Sopenharmony_ci 8862306a36Sopenharmony_ci disable-over-current: 8962306a36Sopenharmony_ci type: boolean 9062306a36Sopenharmony_ci description: whether to disable detection of over-current condition. 9162306a36Sopenharmony_ci 9262306a36Sopenharmony_ci iommus: 9362306a36Sopenharmony_ci maxItems: 1 9462306a36Sopenharmony_ci 9562306a36Sopenharmony_ci resets: 9662306a36Sopenharmony_ci items: 9762306a36Sopenharmony_ci - description: common reset 9862306a36Sopenharmony_ci - description: ecc reset 9962306a36Sopenharmony_ci minItems: 1 10062306a36Sopenharmony_ci 10162306a36Sopenharmony_ci reset-names: 10262306a36Sopenharmony_ci items: 10362306a36Sopenharmony_ci - const: dwc2 10462306a36Sopenharmony_ci - const: dwc2-ecc 10562306a36Sopenharmony_ci minItems: 1 10662306a36Sopenharmony_ci 10762306a36Sopenharmony_ci phys: 10862306a36Sopenharmony_ci maxItems: 1 10962306a36Sopenharmony_ci 11062306a36Sopenharmony_ci phy-names: 11162306a36Sopenharmony_ci const: usb2-phy 11262306a36Sopenharmony_ci 11362306a36Sopenharmony_ci power-domains: 11462306a36Sopenharmony_ci maxItems: 1 11562306a36Sopenharmony_ci 11662306a36Sopenharmony_ci vbus-supply: 11762306a36Sopenharmony_ci description: reference to the VBUS regulator. Depending on the current mode 11862306a36Sopenharmony_ci this is enabled (in "host" mode") or disabled (in "peripheral" mode). The 11962306a36Sopenharmony_ci regulator is updated if the controller is configured in "otg" mode and the 12062306a36Sopenharmony_ci status changes between "host" and "peripheral". 12162306a36Sopenharmony_ci 12262306a36Sopenharmony_ci vusb_d-supply: 12362306a36Sopenharmony_ci description: phandle to voltage regulator of digital section, 12462306a36Sopenharmony_ci 12562306a36Sopenharmony_ci vusb_a-supply: 12662306a36Sopenharmony_ci description: phandle to voltage regulator of analog section. 12762306a36Sopenharmony_ci 12862306a36Sopenharmony_ci usb33d-supply: 12962306a36Sopenharmony_ci description: reference to the VBUS and ID sensing comparators supply, in 13062306a36Sopenharmony_ci order to perform OTG operation, used on STM32MP15 SoCs. 13162306a36Sopenharmony_ci 13262306a36Sopenharmony_ci dr_mode: true 13362306a36Sopenharmony_ci 13462306a36Sopenharmony_ci otg-rev: true 13562306a36Sopenharmony_ci 13662306a36Sopenharmony_ci hnp-disable: true 13762306a36Sopenharmony_ci 13862306a36Sopenharmony_ci srp-disable: true 13962306a36Sopenharmony_ci 14062306a36Sopenharmony_ci usb-role-switch: true 14162306a36Sopenharmony_ci 14262306a36Sopenharmony_ci role-switch-default-mode: true 14362306a36Sopenharmony_ci 14462306a36Sopenharmony_ci g-rx-fifo-size: 14562306a36Sopenharmony_ci $ref: /schemas/types.yaml#/definitions/uint32 14662306a36Sopenharmony_ci description: size of rx fifo size in gadget mode. 14762306a36Sopenharmony_ci 14862306a36Sopenharmony_ci g-np-tx-fifo-size: 14962306a36Sopenharmony_ci $ref: /schemas/types.yaml#/definitions/uint32 15062306a36Sopenharmony_ci description: size of non-periodic tx fifo size in gadget mode. 15162306a36Sopenharmony_ci 15262306a36Sopenharmony_ci g-tx-fifo-size: 15362306a36Sopenharmony_ci $ref: /schemas/types.yaml#/definitions/uint32-array 15462306a36Sopenharmony_ci description: size of periodic tx fifo per endpoint (except ep0) in gadget mode. 15562306a36Sopenharmony_ci 15662306a36Sopenharmony_ci snps,need-phy-for-wake: 15762306a36Sopenharmony_ci $ref: /schemas/types.yaml#/definitions/flag 15862306a36Sopenharmony_ci description: If present indicates that the phy needs to be left on for 15962306a36Sopenharmony_ci remote wakeup during suspend. 16062306a36Sopenharmony_ci 16162306a36Sopenharmony_ci snps,reset-phy-on-wake: 16262306a36Sopenharmony_ci $ref: /schemas/types.yaml#/definitions/flag 16362306a36Sopenharmony_ci description: If present indicates that we need to reset the PHY when we 16462306a36Sopenharmony_ci detect a wakeup. This is due to a hardware errata. 16562306a36Sopenharmony_ci 16662306a36Sopenharmony_ci port: 16762306a36Sopenharmony_ci description: 16862306a36Sopenharmony_ci Any connector to the data bus of this controller should be modelled 16962306a36Sopenharmony_ci using the OF graph bindings specified, if the "usb-role-switch" 17062306a36Sopenharmony_ci property is used. 17162306a36Sopenharmony_ci $ref: /schemas/graph.yaml#/properties/port 17262306a36Sopenharmony_ci 17362306a36Sopenharmony_ci tpl-support: true 17462306a36Sopenharmony_ci 17562306a36Sopenharmony_cidependencies: 17662306a36Sopenharmony_ci port: [ usb-role-switch ] 17762306a36Sopenharmony_ci role-switch-default-mode: [ usb-role-switch ] 17862306a36Sopenharmony_ci 17962306a36Sopenharmony_cirequired: 18062306a36Sopenharmony_ci - compatible 18162306a36Sopenharmony_ci - reg 18262306a36Sopenharmony_ci - interrupts 18362306a36Sopenharmony_ci - clocks 18462306a36Sopenharmony_ci - clock-names 18562306a36Sopenharmony_ci 18662306a36Sopenharmony_ciadditionalProperties: false 18762306a36Sopenharmony_ci 18862306a36Sopenharmony_ciexamples: 18962306a36Sopenharmony_ci - | 19062306a36Sopenharmony_ci usb@101c0000 { 19162306a36Sopenharmony_ci compatible = "rockchip,rk3066-usb", "snps,dwc2"; 19262306a36Sopenharmony_ci reg = <0x10180000 0x40000>; 19362306a36Sopenharmony_ci interrupts = <18>; 19462306a36Sopenharmony_ci clocks = <&usb_otg_ahb_clk>; 19562306a36Sopenharmony_ci clock-names = "otg"; 19662306a36Sopenharmony_ci phys = <&usbphy>; 19762306a36Sopenharmony_ci phy-names = "usb2-phy"; 19862306a36Sopenharmony_ci }; 19962306a36Sopenharmony_ci 20062306a36Sopenharmony_ci... 201