18c2ecf20Sopenharmony_ciRockchip SuperSpeed DWC3 USB SoC controller 28c2ecf20Sopenharmony_ci 38c2ecf20Sopenharmony_ciRequired properties: 48c2ecf20Sopenharmony_ci- compatible: should contain "rockchip,rk3399-dwc3" for rk3399 SoC 58c2ecf20Sopenharmony_ci- clocks: A list of phandle + clock-specifier pairs for the 68c2ecf20Sopenharmony_ci clocks listed in clock-names 78c2ecf20Sopenharmony_ci- clock-names: Should contain the following: 88c2ecf20Sopenharmony_ci "ref_clk" Controller reference clk, have to be 24 MHz 98c2ecf20Sopenharmony_ci "suspend_clk" Controller suspend clk, have to be 24 MHz or 32 KHz 108c2ecf20Sopenharmony_ci "bus_clk" Master/Core clock, have to be >= 62.5 MHz for SS 118c2ecf20Sopenharmony_ci operation and >= 30MHz for HS operation 128c2ecf20Sopenharmony_ci "grf_clk" Controller grf clk 138c2ecf20Sopenharmony_ci 148c2ecf20Sopenharmony_ciRequired child node: 158c2ecf20Sopenharmony_ciA child node must exist to represent the core DWC3 IP block. The name of 168c2ecf20Sopenharmony_cithe node is not important. The content of the node is defined in dwc3.txt. 178c2ecf20Sopenharmony_ci 188c2ecf20Sopenharmony_ciPhy documentation is provided in the following places: 198c2ecf20Sopenharmony_ciDocumentation/devicetree/bindings/phy/phy-rockchip-inno-usb2.yaml - USB2.0 PHY 208c2ecf20Sopenharmony_ciDocumentation/devicetree/bindings/phy/phy-rockchip-typec.txt - Type-C PHY 218c2ecf20Sopenharmony_ci 228c2ecf20Sopenharmony_ciExample device nodes: 238c2ecf20Sopenharmony_ci 248c2ecf20Sopenharmony_ci usbdrd3_0: usb@fe800000 { 258c2ecf20Sopenharmony_ci compatible = "rockchip,rk3399-dwc3"; 268c2ecf20Sopenharmony_ci clocks = <&cru SCLK_USB3OTG0_REF>, <&cru SCLK_USB3OTG0_SUSPEND>, 278c2ecf20Sopenharmony_ci <&cru ACLK_USB3OTG0>, <&cru ACLK_USB3_GRF>; 288c2ecf20Sopenharmony_ci clock-names = "ref_clk", "suspend_clk", 298c2ecf20Sopenharmony_ci "bus_clk", "grf_clk"; 308c2ecf20Sopenharmony_ci #address-cells = <2>; 318c2ecf20Sopenharmony_ci #size-cells = <2>; 328c2ecf20Sopenharmony_ci ranges; 338c2ecf20Sopenharmony_ci usbdrd_dwc3_0: dwc3@fe800000 { 348c2ecf20Sopenharmony_ci compatible = "snps,dwc3"; 358c2ecf20Sopenharmony_ci reg = <0x0 0xfe800000 0x0 0x100000>; 368c2ecf20Sopenharmony_ci interrupts = <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>; 378c2ecf20Sopenharmony_ci dr_mode = "otg"; 388c2ecf20Sopenharmony_ci }; 398c2ecf20Sopenharmony_ci }; 408c2ecf20Sopenharmony_ci 418c2ecf20Sopenharmony_ci usbdrd3_1: usb@fe900000 { 428c2ecf20Sopenharmony_ci compatible = "rockchip,rk3399-dwc3"; 438c2ecf20Sopenharmony_ci clocks = <&cru SCLK_USB3OTG1_REF>, <&cru SCLK_USB3OTG1_SUSPEND>, 448c2ecf20Sopenharmony_ci <&cru ACLK_USB3OTG1>, <&cru ACLK_USB3_GRF>; 458c2ecf20Sopenharmony_ci clock-names = "ref_clk", "suspend_clk", 468c2ecf20Sopenharmony_ci "bus_clk", "grf_clk"; 478c2ecf20Sopenharmony_ci #address-cells = <2>; 488c2ecf20Sopenharmony_ci #size-cells = <2>; 498c2ecf20Sopenharmony_ci ranges; 508c2ecf20Sopenharmony_ci usbdrd_dwc3_1: dwc3@fe900000 { 518c2ecf20Sopenharmony_ci compatible = "snps,dwc3"; 528c2ecf20Sopenharmony_ci reg = <0x0 0xfe900000 0x0 0x100000>; 538c2ecf20Sopenharmony_ci interrupts = <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>; 548c2ecf20Sopenharmony_ci dr_mode = "otg"; 558c2ecf20Sopenharmony_ci }; 568c2ecf20Sopenharmony_ci }; 57