162306a36Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0 262306a36Sopenharmony_ci%YAML 1.2 362306a36Sopenharmony_ci--- 462306a36Sopenharmony_ci$id: http://devicetree.org/schemas/usb/rockchip,rk3399-dwc3.yaml# 562306a36Sopenharmony_ci$schema: http://devicetree.org/meta-schemas/core.yaml# 662306a36Sopenharmony_ci 762306a36Sopenharmony_cititle: Rockchip RK3399 SuperSpeed DWC3 USB SoC controller 862306a36Sopenharmony_ci 962306a36Sopenharmony_cimaintainers: 1062306a36Sopenharmony_ci - Heiko Stuebner <heiko@sntech.de> 1162306a36Sopenharmony_ci 1262306a36Sopenharmony_ciproperties: 1362306a36Sopenharmony_ci compatible: 1462306a36Sopenharmony_ci const: rockchip,rk3399-dwc3 1562306a36Sopenharmony_ci 1662306a36Sopenharmony_ci '#address-cells': 1762306a36Sopenharmony_ci const: 2 1862306a36Sopenharmony_ci 1962306a36Sopenharmony_ci '#size-cells': 2062306a36Sopenharmony_ci const: 2 2162306a36Sopenharmony_ci 2262306a36Sopenharmony_ci ranges: true 2362306a36Sopenharmony_ci 2462306a36Sopenharmony_ci clocks: 2562306a36Sopenharmony_ci items: 2662306a36Sopenharmony_ci - description: 2762306a36Sopenharmony_ci Controller reference clock, must to be 24 MHz 2862306a36Sopenharmony_ci - description: 2962306a36Sopenharmony_ci Controller suspend clock, must to be 24 MHz or 32 KHz 3062306a36Sopenharmony_ci - description: 3162306a36Sopenharmony_ci Master/Core clock, must to be >= 62.5 MHz for SS 3262306a36Sopenharmony_ci operation and >= 30MHz for HS operation 3362306a36Sopenharmony_ci - description: 3462306a36Sopenharmony_ci USB3 aclk peri 3562306a36Sopenharmony_ci - description: 3662306a36Sopenharmony_ci USB3 aclk 3762306a36Sopenharmony_ci - description: 3862306a36Sopenharmony_ci Controller grf clock 3962306a36Sopenharmony_ci 4062306a36Sopenharmony_ci clock-names: 4162306a36Sopenharmony_ci items: 4262306a36Sopenharmony_ci - const: ref_clk 4362306a36Sopenharmony_ci - const: suspend_clk 4462306a36Sopenharmony_ci - const: bus_clk 4562306a36Sopenharmony_ci - const: aclk_usb3_rksoc_axi_perf 4662306a36Sopenharmony_ci - const: aclk_usb3 4762306a36Sopenharmony_ci - const: grf_clk 4862306a36Sopenharmony_ci 4962306a36Sopenharmony_ci resets: 5062306a36Sopenharmony_ci maxItems: 1 5162306a36Sopenharmony_ci 5262306a36Sopenharmony_ci reset-names: 5362306a36Sopenharmony_ci const: usb3-otg 5462306a36Sopenharmony_ci 5562306a36Sopenharmony_cipatternProperties: 5662306a36Sopenharmony_ci '^usb@': 5762306a36Sopenharmony_ci $ref: snps,dwc3.yaml# 5862306a36Sopenharmony_ci 5962306a36Sopenharmony_ciadditionalProperties: false 6062306a36Sopenharmony_ci 6162306a36Sopenharmony_cirequired: 6262306a36Sopenharmony_ci - compatible 6362306a36Sopenharmony_ci - '#address-cells' 6462306a36Sopenharmony_ci - '#size-cells' 6562306a36Sopenharmony_ci - ranges 6662306a36Sopenharmony_ci - clocks 6762306a36Sopenharmony_ci - clock-names 6862306a36Sopenharmony_ci - resets 6962306a36Sopenharmony_ci - reset-names 7062306a36Sopenharmony_ci 7162306a36Sopenharmony_ciexamples: 7262306a36Sopenharmony_ci - | 7362306a36Sopenharmony_ci #include <dt-bindings/clock/rk3399-cru.h> 7462306a36Sopenharmony_ci #include <dt-bindings/power/rk3399-power.h> 7562306a36Sopenharmony_ci #include <dt-bindings/interrupt-controller/arm-gic.h> 7662306a36Sopenharmony_ci 7762306a36Sopenharmony_ci bus { 7862306a36Sopenharmony_ci #address-cells = <2>; 7962306a36Sopenharmony_ci #size-cells = <2>; 8062306a36Sopenharmony_ci 8162306a36Sopenharmony_ci usb { 8262306a36Sopenharmony_ci compatible = "rockchip,rk3399-dwc3"; 8362306a36Sopenharmony_ci #address-cells = <2>; 8462306a36Sopenharmony_ci #size-cells = <2>; 8562306a36Sopenharmony_ci ranges; 8662306a36Sopenharmony_ci clocks = <&cru SCLK_USB3OTG0_REF>, <&cru SCLK_USB3OTG0_SUSPEND>, 8762306a36Sopenharmony_ci <&cru ACLK_USB3OTG0>, <&cru ACLK_USB3_RKSOC_AXI_PERF>, 8862306a36Sopenharmony_ci <&cru ACLK_USB3>, <&cru ACLK_USB3_GRF>; 8962306a36Sopenharmony_ci clock-names = "ref_clk", "suspend_clk", 9062306a36Sopenharmony_ci "bus_clk", "aclk_usb3_rksoc_axi_perf", 9162306a36Sopenharmony_ci "aclk_usb3", "grf_clk"; 9262306a36Sopenharmony_ci resets = <&cru SRST_A_USB3_OTG0>; 9362306a36Sopenharmony_ci reset-names = "usb3-otg"; 9462306a36Sopenharmony_ci 9562306a36Sopenharmony_ci usb@fe800000 { 9662306a36Sopenharmony_ci compatible = "snps,dwc3"; 9762306a36Sopenharmony_ci reg = <0x0 0xfe800000 0x0 0x100000>; 9862306a36Sopenharmony_ci interrupts = <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH 0>; 9962306a36Sopenharmony_ci clocks = <&cru SCLK_USB3OTG0_REF>, <&cru ACLK_USB3OTG0>, 10062306a36Sopenharmony_ci <&cru SCLK_USB3OTG0_SUSPEND>; 10162306a36Sopenharmony_ci clock-names = "ref", "bus_early", "suspend"; 10262306a36Sopenharmony_ci dr_mode = "otg"; 10362306a36Sopenharmony_ci phys = <&u2phy0_otg>, <&tcphy0_usb3>; 10462306a36Sopenharmony_ci phy-names = "usb2-phy", "usb3-phy"; 10562306a36Sopenharmony_ci phy_type = "utmi_wide"; 10662306a36Sopenharmony_ci snps,dis_enblslpm_quirk; 10762306a36Sopenharmony_ci snps,dis-u2-freeclk-exists-quirk; 10862306a36Sopenharmony_ci snps,dis_u2_susphy_quirk; 10962306a36Sopenharmony_ci snps,dis-del-phy-power-chg-quirk; 11062306a36Sopenharmony_ci snps,dis-tx-ipgap-linecheck-quirk; 11162306a36Sopenharmony_ci power-domains = <&power RK3399_PD_USB3>; 11262306a36Sopenharmony_ci }; 11362306a36Sopenharmony_ci }; 11462306a36Sopenharmony_ci }; 11562306a36Sopenharmony_ci... 116