xref: /openbmc/linux/arch/arm64/boot/dts/freescale/imx8dxl-ss-conn.dtsi (revision f537ee7f1e76990ef9ba0e6d32fd9cc51eb12e43)
1*f537ee7fSShenwei Wang// SPDX-License-Identifier: GPL-2.0+
2*f537ee7fSShenwei Wang/*
3*f537ee7fSShenwei Wang * Copyright 2019~2020, 2022 NXP
4*f537ee7fSShenwei Wang */
5*f537ee7fSShenwei Wang
6*f537ee7fSShenwei Wang/delete-node/ &enet1_lpcg;
7*f537ee7fSShenwei Wang/delete-node/ &fec2;
8*f537ee7fSShenwei Wang
9*f537ee7fSShenwei Wang&conn_subsys {
10*f537ee7fSShenwei Wang	conn_enet0_root_clk: clock-conn-enet0-root {
11*f537ee7fSShenwei Wang		compatible = "fixed-clock";
12*f537ee7fSShenwei Wang		#clock-cells = <0>;
13*f537ee7fSShenwei Wang		clock-frequency = <250000000>;
14*f537ee7fSShenwei Wang		clock-output-names = "conn_enet0_root_clk";
15*f537ee7fSShenwei Wang	};
16*f537ee7fSShenwei Wang
17*f537ee7fSShenwei Wang	eqos: ethernet@5b050000 {
18*f537ee7fSShenwei Wang		compatible = "nxp,imx8dxl-dwmac-eqos", "snps,dwmac-5.10a";
19*f537ee7fSShenwei Wang		reg = <0x5b050000 0x10000>;
20*f537ee7fSShenwei Wang		interrupt-parent = <&gic>;
21*f537ee7fSShenwei Wang		interrupts = <GIC_SPI 163 IRQ_TYPE_LEVEL_HIGH>,
22*f537ee7fSShenwei Wang			     <GIC_SPI 162 IRQ_TYPE_LEVEL_HIGH>;
23*f537ee7fSShenwei Wang		interrupt-names = "eth_wake_irq", "macirq";
24*f537ee7fSShenwei Wang		clocks = <&eqos_lpcg IMX_LPCG_CLK_4>,
25*f537ee7fSShenwei Wang			 <&eqos_lpcg IMX_LPCG_CLK_6>,
26*f537ee7fSShenwei Wang			 <&eqos_lpcg IMX_LPCG_CLK_0>,
27*f537ee7fSShenwei Wang			 <&eqos_lpcg IMX_LPCG_CLK_5>,
28*f537ee7fSShenwei Wang			 <&eqos_lpcg IMX_LPCG_CLK_2>;
29*f537ee7fSShenwei Wang		clock-names = "stmmaceth", "pclk", "ptp_ref", "tx", "mem";
30*f537ee7fSShenwei Wang		assigned-clocks = <&clk IMX_SC_R_ENET_1 IMX_SC_PM_CLK_PER>;
31*f537ee7fSShenwei Wang		assigned-clock-rates = <125000000>;
32*f537ee7fSShenwei Wang		power-domains = <&pd IMX_SC_R_ENET_1>;
33*f537ee7fSShenwei Wang		status = "disabled";
34*f537ee7fSShenwei Wang	};
35*f537ee7fSShenwei Wang
36*f537ee7fSShenwei Wang	usbotg2: usb@5b0e0000 {
37*f537ee7fSShenwei Wang		compatible = "fsl,imx8dxl-usb", "fsl,imx7ulp-usb";
38*f537ee7fSShenwei Wang		reg = <0x5b0e0000 0x200>;
39*f537ee7fSShenwei Wang		interrupt-parent = <&gic>;
40*f537ee7fSShenwei Wang		interrupts = <GIC_SPI 166 IRQ_TYPE_LEVEL_HIGH>;
41*f537ee7fSShenwei Wang		fsl,usbphy = <&usbphy2>;
42*f537ee7fSShenwei Wang		fsl,usbmisc = <&usbmisc2 0>;
43*f537ee7fSShenwei Wang		/*
44*f537ee7fSShenwei Wang		 * usbotg1 and usbotg2 share one clcok.
45*f537ee7fSShenwei Wang		 * scu firmware disables the access to the clock and keeps
46*f537ee7fSShenwei Wang		 * it always on in case other core (M4) uses one of these.
47*f537ee7fSShenwei Wang		 */
48*f537ee7fSShenwei Wang		clocks = <&clk_dummy>;
49*f537ee7fSShenwei Wang		ahb-burst-config = <0x0>;
50*f537ee7fSShenwei Wang		tx-burst-size-dword = <0x10>;
51*f537ee7fSShenwei Wang		rx-burst-size-dword = <0x10>;
52*f537ee7fSShenwei Wang		#stream-id-cells = <1>;
53*f537ee7fSShenwei Wang		power-domains = <&pd IMX_SC_R_USB_1>;
54*f537ee7fSShenwei Wang		status = "disabled";
55*f537ee7fSShenwei Wang
56*f537ee7fSShenwei Wang		clk_dummy: clock-dummy {
57*f537ee7fSShenwei Wang			compatible = "fixed-clock";
58*f537ee7fSShenwei Wang			#clock-cells = <0>;
59*f537ee7fSShenwei Wang			clock-frequency = <0>;
60*f537ee7fSShenwei Wang			clock-output-names = "clk_dummy";
61*f537ee7fSShenwei Wang		};
62*f537ee7fSShenwei Wang	};
63*f537ee7fSShenwei Wang
64*f537ee7fSShenwei Wang	usbmisc2: usbmisc@5b0e0200 {
65*f537ee7fSShenwei Wang		#index-cells = <1>;
66*f537ee7fSShenwei Wang		compatible = "fsl,imx7ulp-usbmisc";
67*f537ee7fSShenwei Wang		reg = <0x5b0e0200 0x200>;
68*f537ee7fSShenwei Wang	};
69*f537ee7fSShenwei Wang
70*f537ee7fSShenwei Wang	usbphy2: usbphy@0x5b110000 {
71*f537ee7fSShenwei Wang		compatible = "fsl,imx8dxl-usbphy", "fsl,imx7ulp-usbphy";
72*f537ee7fSShenwei Wang		reg = <0x5b110000 0x1000>;
73*f537ee7fSShenwei Wang		clocks = <&usb2_2_lpcg IMX_LPCG_CLK_7>;
74*f537ee7fSShenwei Wang		power-domains = <&pd IMX_SC_R_USB_1_PHY>;
75*f537ee7fSShenwei Wang		status = "disabled";
76*f537ee7fSShenwei Wang	};
77*f537ee7fSShenwei Wang
78*f537ee7fSShenwei Wang	eqos_lpcg: clock-controller@5b240000 {
79*f537ee7fSShenwei Wang		compatible = "fsl,imx8qxp-lpcg";
80*f537ee7fSShenwei Wang		reg = <0x5b240000 0x10000>;
81*f537ee7fSShenwei Wang		#clock-cells = <1>;
82*f537ee7fSShenwei Wang		clocks = <&conn_enet0_root_clk>,
83*f537ee7fSShenwei Wang			 <&conn_axi_clk>,
84*f537ee7fSShenwei Wang			 <&conn_axi_clk>,
85*f537ee7fSShenwei Wang			 <&clk IMX_SC_R_ENET_1 IMX_SC_PM_CLK_PER>,
86*f537ee7fSShenwei Wang			 <&conn_ipg_clk>;
87*f537ee7fSShenwei Wang		clock-indices = <IMX_LPCG_CLK_0>, <IMX_LPCG_CLK_2>,
88*f537ee7fSShenwei Wang				<IMX_LPCG_CLK_4>, <IMX_LPCG_CLK_5>,
89*f537ee7fSShenwei Wang				<IMX_LPCG_CLK_6>;
90*f537ee7fSShenwei Wang		clock-output-names = "eqos_ptp",
91*f537ee7fSShenwei Wang				     "eqos_mem_clk",
92*f537ee7fSShenwei Wang				     "eqos_aclk",
93*f537ee7fSShenwei Wang				     "eqos_clk",
94*f537ee7fSShenwei Wang				     "eqos_csr_clk";
95*f537ee7fSShenwei Wang		power-domains = <&pd IMX_SC_R_ENET_1>;
96*f537ee7fSShenwei Wang	};
97*f537ee7fSShenwei Wang
98*f537ee7fSShenwei Wang	usb2_2_lpcg: clock-controller@5b280000 {
99*f537ee7fSShenwei Wang		compatible = "fsl,imx8qxp-lpcg";
100*f537ee7fSShenwei Wang		reg = <0x5b280000 0x10000>;
101*f537ee7fSShenwei Wang		#clock-cells = <1>;
102*f537ee7fSShenwei Wang		clock-indices = <IMX_LPCG_CLK_7>;
103*f537ee7fSShenwei Wang		clocks = <&conn_ipg_clk>;
104*f537ee7fSShenwei Wang		clock-output-names = "usboh3_2_phy_ipg_clk";
105*f537ee7fSShenwei Wang		power-domains = <&pd IMX_SC_R_USB_1_PHY>;
106*f537ee7fSShenwei Wang	};
107*f537ee7fSShenwei Wang
108*f537ee7fSShenwei Wang};
109*f537ee7fSShenwei Wang
110*f537ee7fSShenwei Wang&enet0_lpcg {
111*f537ee7fSShenwei Wang	clocks = <&conn_enet0_root_clk>,
112*f537ee7fSShenwei Wang		 <&conn_enet0_root_clk>,
113*f537ee7fSShenwei Wang		 <&conn_axi_clk>,
114*f537ee7fSShenwei Wang		 <&clk IMX_SC_R_ENET_0 IMX_SC_C_TXCLK>,
115*f537ee7fSShenwei Wang		 <&conn_ipg_clk>,
116*f537ee7fSShenwei Wang		 <&conn_ipg_clk>;
117*f537ee7fSShenwei Wang};
118*f537ee7fSShenwei Wang
119*f537ee7fSShenwei Wang&fec1 {
120*f537ee7fSShenwei Wang	compatible = "fsl,imx8qm-fec";
121*f537ee7fSShenwei Wang	interrupts = <GIC_SPI 160 IRQ_TYPE_LEVEL_HIGH>,
122*f537ee7fSShenwei Wang		     <GIC_SPI 158 IRQ_TYPE_LEVEL_HIGH>,
123*f537ee7fSShenwei Wang		     <GIC_SPI 159 IRQ_TYPE_LEVEL_HIGH>,
124*f537ee7fSShenwei Wang		     <GIC_SPI 161 IRQ_TYPE_LEVEL_HIGH>;
125*f537ee7fSShenwei Wang	assigned-clocks = <&clk IMX_SC_R_ENET_0 IMX_SC_C_CLKDIV>;
126*f537ee7fSShenwei Wang	assigned-clock-rates = <125000000>;
127*f537ee7fSShenwei Wang};
128*f537ee7fSShenwei Wang
129*f537ee7fSShenwei Wang&usdhc1 {
130*f537ee7fSShenwei Wang	compatible = "fsl,imx8dxl-usdhc", "fsl,imx8qxp-usdhc";
131*f537ee7fSShenwei Wang	interrupts = <GIC_SPI 138 IRQ_TYPE_LEVEL_HIGH>;
132*f537ee7fSShenwei Wang};
133*f537ee7fSShenwei Wang
134*f537ee7fSShenwei Wang&usdhc2 {
135*f537ee7fSShenwei Wang	compatible = "fsl,imx8dxl-usdhc", "fsl,imx8qxp-usdhc";
136*f537ee7fSShenwei Wang	interrupts = <GIC_SPI 139 IRQ_TYPE_LEVEL_HIGH>;
137*f537ee7fSShenwei Wang};
138*f537ee7fSShenwei Wang
139*f537ee7fSShenwei Wang&usdhc3 {
140*f537ee7fSShenwei Wang	compatible = "fsl,imx8dxl-usdhc", "fsl,imx8qxp-usdhc";
141*f537ee7fSShenwei Wang	interrupts = <GIC_SPI 140 IRQ_TYPE_LEVEL_HIGH>;
142*f537ee7fSShenwei Wang};
143