blob: 31046fc7febbf059233562cfb0d0adb89b883067 [file] [log] [blame]
Jagan Teki2a8481e2023-01-30 20:27:46 +05301// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2/*
3 * Copyright (c) 2022 Edgeble AI Technologies Pvt. Ltd.
4 */
5
Jagan Teki2a8481e2023-01-30 20:27:46 +05306#include "rk3588s-u-boot.dtsi"
Joseph Chenb8bae822023-05-29 13:01:34 +03007
8/ {
Jonas Karlmanc1710bf2023-10-17 17:02:11 +00009 usb_host1_xhci: usb@fc400000 {
10 compatible = "rockchip,rk3588-dwc3", "rockchip,rk3568-dwc3", "snps,dwc3";
11 reg = <0x0 0xfc400000 0x0 0x400000>;
12 interrupts = <GIC_SPI 221 IRQ_TYPE_LEVEL_HIGH 0>;
Joseph Chenb8bae822023-05-29 13:01:34 +030013 clocks = <&cru REF_CLK_USB3OTG1>, <&cru SUSPEND_CLK_USB3OTG1>,
14 <&cru ACLK_USB3OTG1>;
Jonas Karlmanc1710bf2023-10-17 17:02:11 +000015 clock-names = "ref_clk", "suspend_clk", "bus_clk";
16 dr_mode = "host";
17 phys = <&u2phy1_otg>, <&usbdp_phy1_u3>;
18 phy-names = "usb2-phy", "usb3-phy";
19 phy_type = "utmi_wide";
20 power-domains = <&power RK3588_PD_USB>;
21 resets = <&cru SRST_A_USB3OTG1>;
22 snps,dis_enblslpm_quirk;
23 snps,dis-u2-freeclk-exists-quirk;
24 snps,dis-del-phy-power-chg-quirk;
25 snps,dis-tx-ipgap-linecheck-quirk;
Joseph Chenb8bae822023-05-29 13:01:34 +030026 status = "disabled";
Joseph Chenb8bae822023-05-29 13:01:34 +030027 };
28
29 usbdpphy1_grf: syscon@fd5cc000 {
30 compatible = "rockchip,rk3588-usbdpphy-grf", "syscon";
31 reg = <0x0 0xfd5cc000 0x0 0x4000>;
32 };
33
34 usb2phy1_grf: syscon@fd5d4000 {
35 compatible = "rockchip,rk3588-usb2phy-grf", "syscon",
36 "simple-mfd";
37 reg = <0x0 0xfd5d4000 0x0 0x4000>;
38 #address-cells = <1>;
39 #size-cells = <1>;
40
41 u2phy1: usb2-phy@4000 {
42 compatible = "rockchip,rk3588-usb2phy";
43 reg = <0x4000 0x10>;
44 interrupts = <GIC_SPI 394 IRQ_TYPE_LEVEL_HIGH 0>;
45 resets = <&cru SRST_OTGPHY_U3_1>, <&cru SRST_P_USB2PHY_U3_1_GRF0>;
46 reset-names = "phy", "apb";
47 clocks = <&cru CLK_USB2PHY_HDPTXRXPHY_REF>;
48 clock-names = "phyclk";
49 clock-output-names = "usb480m_phy1";
50 #clock-cells = <0>;
Joseph Chenb8bae822023-05-29 13:01:34 +030051 status = "disabled";
52
53 u2phy1_otg: otg-port {
54 #phy-cells = <0>;
55 status = "disabled";
56 };
57 };
58 };
59
60 usbdp_phy1: phy@fed90000 {
61 compatible = "rockchip,rk3588-usbdp-phy";
62 reg = <0x0 0xfed90000 0x0 0x10000>;
63 rockchip,u2phy-grf = <&usb2phy1_grf>;
64 rockchip,usb-grf = <&usb_grf>;
65 rockchip,usbdpphy-grf = <&usbdpphy1_grf>;
66 rockchip,vo-grf = <&vo0_grf>;
67 clocks = <&cru CLK_USBDPPHY_MIPIDCPPHY_REF>,
68 <&cru CLK_USBDP_PHY1_IMMORTAL>,
69 <&cru PCLK_USBDPPHY1>,
70 <&u2phy1>;
71 clock-names = "refclk", "immortal", "pclk", "utmi";
72 resets = <&cru SRST_USBDP_COMBO_PHY1_INIT>,
73 <&cru SRST_USBDP_COMBO_PHY1_CMN>,
74 <&cru SRST_USBDP_COMBO_PHY1_LANE>,
75 <&cru SRST_USBDP_COMBO_PHY1_PCS>,
76 <&cru SRST_P_USBDPPHY1>;
77 reset-names = "init", "cmn", "lane", "pcs_apb", "pma_apb";
78 status = "disabled";
79
80 usbdp_phy1_dp: dp-port {
81 #phy-cells = <0>;
82 status = "disabled";
83 };
84
85 usbdp_phy1_u3: usb3-port {
86 #phy-cells = <0>;
87 status = "disabled";
88 };
89 };
90};