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