162306a36Sopenharmony_ci// SPDX-License-Identifier: GPL-2.0+
262306a36Sopenharmony_ci/*
362306a36Sopenharmony_ci * Copyright 2019~2020, 2022 NXP
462306a36Sopenharmony_ci */
562306a36Sopenharmony_ci
662306a36Sopenharmony_ci/delete-node/ &enet1_lpcg;
762306a36Sopenharmony_ci/delete-node/ &fec2;
862306a36Sopenharmony_ci
962306a36Sopenharmony_ci&conn_subsys {
1062306a36Sopenharmony_ci	conn_enet0_root_clk: clock-conn-enet0-root {
1162306a36Sopenharmony_ci		compatible = "fixed-clock";
1262306a36Sopenharmony_ci		#clock-cells = <0>;
1362306a36Sopenharmony_ci		clock-frequency = <250000000>;
1462306a36Sopenharmony_ci		clock-output-names = "conn_enet0_root_clk";
1562306a36Sopenharmony_ci	};
1662306a36Sopenharmony_ci
1762306a36Sopenharmony_ci	eqos: ethernet@5b050000 {
1862306a36Sopenharmony_ci		compatible = "nxp,imx8dxl-dwmac-eqos", "snps,dwmac-5.10a";
1962306a36Sopenharmony_ci		reg = <0x5b050000 0x10000>;
2062306a36Sopenharmony_ci		interrupt-parent = <&gic>;
2162306a36Sopenharmony_ci		interrupts = <GIC_SPI 163 IRQ_TYPE_LEVEL_HIGH>,
2262306a36Sopenharmony_ci			     <GIC_SPI 162 IRQ_TYPE_LEVEL_HIGH>;
2362306a36Sopenharmony_ci		interrupt-names = "eth_wake_irq", "macirq";
2462306a36Sopenharmony_ci		clocks = <&eqos_lpcg IMX_LPCG_CLK_4>,
2562306a36Sopenharmony_ci			 <&eqos_lpcg IMX_LPCG_CLK_6>,
2662306a36Sopenharmony_ci			 <&eqos_lpcg IMX_LPCG_CLK_0>,
2762306a36Sopenharmony_ci			 <&eqos_lpcg IMX_LPCG_CLK_5>,
2862306a36Sopenharmony_ci			 <&eqos_lpcg IMX_LPCG_CLK_2>;
2962306a36Sopenharmony_ci		clock-names = "stmmaceth", "pclk", "ptp_ref", "tx", "mem";
3062306a36Sopenharmony_ci		assigned-clocks = <&clk IMX_SC_R_ENET_1 IMX_SC_PM_CLK_PER>;
3162306a36Sopenharmony_ci		assigned-clock-rates = <125000000>;
3262306a36Sopenharmony_ci		power-domains = <&pd IMX_SC_R_ENET_1>;
3362306a36Sopenharmony_ci		status = "disabled";
3462306a36Sopenharmony_ci	};
3562306a36Sopenharmony_ci
3662306a36Sopenharmony_ci	usbotg2: usb@5b0e0000 {
3762306a36Sopenharmony_ci		compatible = "fsl,imx8dxl-usb", "fsl,imx7ulp-usb", "fsl,imx6ul-usb";
3862306a36Sopenharmony_ci		reg = <0x5b0e0000 0x200>;
3962306a36Sopenharmony_ci		interrupt-parent = <&gic>;
4062306a36Sopenharmony_ci		interrupts = <GIC_SPI 166 IRQ_TYPE_LEVEL_HIGH>;
4162306a36Sopenharmony_ci		fsl,usbphy = <&usbphy2>;
4262306a36Sopenharmony_ci		fsl,usbmisc = <&usbmisc2 0>;
4362306a36Sopenharmony_ci		/*
4462306a36Sopenharmony_ci		 * usbotg1 and usbotg2 share one clcok.
4562306a36Sopenharmony_ci		 * scu firmware disables the access to the clock and keeps
4662306a36Sopenharmony_ci		 * it always on in case other core (M4) uses one of these.
4762306a36Sopenharmony_ci		 */
4862306a36Sopenharmony_ci		clocks = <&clk_dummy>;
4962306a36Sopenharmony_ci		ahb-burst-config = <0x0>;
5062306a36Sopenharmony_ci		tx-burst-size-dword = <0x10>;
5162306a36Sopenharmony_ci		rx-burst-size-dword = <0x10>;
5262306a36Sopenharmony_ci		power-domains = <&pd IMX_SC_R_USB_1>;
5362306a36Sopenharmony_ci		status = "disabled";
5462306a36Sopenharmony_ci
5562306a36Sopenharmony_ci		clk_dummy: clock-dummy {
5662306a36Sopenharmony_ci			compatible = "fixed-clock";
5762306a36Sopenharmony_ci			#clock-cells = <0>;
5862306a36Sopenharmony_ci			clock-frequency = <0>;
5962306a36Sopenharmony_ci			clock-output-names = "clk_dummy";
6062306a36Sopenharmony_ci		};
6162306a36Sopenharmony_ci	};
6262306a36Sopenharmony_ci
6362306a36Sopenharmony_ci	usbmisc2: usbmisc@5b0e0200 {
6462306a36Sopenharmony_ci		#index-cells = <1>;
6562306a36Sopenharmony_ci		compatible = "fsl,imx7ulp-usbmisc", "fsl,imx7d-usbmisc", "fsl,imx6q-usbmisc";
6662306a36Sopenharmony_ci		reg = <0x5b0e0200 0x200>;
6762306a36Sopenharmony_ci	};
6862306a36Sopenharmony_ci
6962306a36Sopenharmony_ci	usbphy2: usbphy@5b110000 {
7062306a36Sopenharmony_ci		compatible = "fsl,imx8dxl-usbphy", "fsl,imx7ulp-usbphy";
7162306a36Sopenharmony_ci		reg = <0x5b110000 0x1000>;
7262306a36Sopenharmony_ci		clocks = <&usb2_2_lpcg IMX_LPCG_CLK_7>;
7362306a36Sopenharmony_ci		power-domains = <&pd IMX_SC_R_USB_1_PHY>;
7462306a36Sopenharmony_ci		status = "disabled";
7562306a36Sopenharmony_ci	};
7662306a36Sopenharmony_ci
7762306a36Sopenharmony_ci	eqos_lpcg: clock-controller@5b240000 {
7862306a36Sopenharmony_ci		compatible = "fsl,imx8qxp-lpcg";
7962306a36Sopenharmony_ci		reg = <0x5b240000 0x10000>;
8062306a36Sopenharmony_ci		#clock-cells = <1>;
8162306a36Sopenharmony_ci		clocks = <&conn_enet0_root_clk>,
8262306a36Sopenharmony_ci			 <&conn_axi_clk>,
8362306a36Sopenharmony_ci			 <&conn_axi_clk>,
8462306a36Sopenharmony_ci			 <&clk IMX_SC_R_ENET_1 IMX_SC_PM_CLK_PER>,
8562306a36Sopenharmony_ci			 <&conn_ipg_clk>;
8662306a36Sopenharmony_ci		clock-indices = <IMX_LPCG_CLK_0>, <IMX_LPCG_CLK_2>,
8762306a36Sopenharmony_ci				<IMX_LPCG_CLK_4>, <IMX_LPCG_CLK_5>,
8862306a36Sopenharmony_ci				<IMX_LPCG_CLK_6>;
8962306a36Sopenharmony_ci		clock-output-names = "eqos_ptp",
9062306a36Sopenharmony_ci				     "eqos_mem_clk",
9162306a36Sopenharmony_ci				     "eqos_aclk",
9262306a36Sopenharmony_ci				     "eqos_clk",
9362306a36Sopenharmony_ci				     "eqos_csr_clk";
9462306a36Sopenharmony_ci		power-domains = <&pd IMX_SC_R_ENET_1>;
9562306a36Sopenharmony_ci	};
9662306a36Sopenharmony_ci
9762306a36Sopenharmony_ci	usb2_2_lpcg: clock-controller@5b280000 {
9862306a36Sopenharmony_ci		compatible = "fsl,imx8qxp-lpcg";
9962306a36Sopenharmony_ci		reg = <0x5b280000 0x10000>;
10062306a36Sopenharmony_ci		#clock-cells = <1>;
10162306a36Sopenharmony_ci		clock-indices = <IMX_LPCG_CLK_7>;
10262306a36Sopenharmony_ci		clocks = <&conn_ipg_clk>;
10362306a36Sopenharmony_ci		clock-output-names = "usboh3_2_phy_ipg_clk";
10462306a36Sopenharmony_ci		power-domains = <&pd IMX_SC_R_USB_1_PHY>;
10562306a36Sopenharmony_ci	};
10662306a36Sopenharmony_ci
10762306a36Sopenharmony_ci};
10862306a36Sopenharmony_ci
10962306a36Sopenharmony_ci&enet0_lpcg {
11062306a36Sopenharmony_ci	clocks = <&conn_enet0_root_clk>,
11162306a36Sopenharmony_ci		 <&conn_enet0_root_clk>,
11262306a36Sopenharmony_ci		 <&conn_axi_clk>,
11362306a36Sopenharmony_ci		 <&clk IMX_SC_R_ENET_0 IMX_SC_C_TXCLK>,
11462306a36Sopenharmony_ci		 <&conn_ipg_clk>,
11562306a36Sopenharmony_ci		 <&conn_ipg_clk>;
11662306a36Sopenharmony_ci};
11762306a36Sopenharmony_ci
11862306a36Sopenharmony_ci&fec1 {
11962306a36Sopenharmony_ci	compatible = "fsl,imx8qm-fec";
12062306a36Sopenharmony_ci	interrupts = <GIC_SPI 160 IRQ_TYPE_LEVEL_HIGH>,
12162306a36Sopenharmony_ci		     <GIC_SPI 158 IRQ_TYPE_LEVEL_HIGH>,
12262306a36Sopenharmony_ci		     <GIC_SPI 159 IRQ_TYPE_LEVEL_HIGH>,
12362306a36Sopenharmony_ci		     <GIC_SPI 161 IRQ_TYPE_LEVEL_HIGH>;
12462306a36Sopenharmony_ci	assigned-clocks = <&clk IMX_SC_R_ENET_0 IMX_SC_C_CLKDIV>;
12562306a36Sopenharmony_ci	assigned-clock-rates = <125000000>;
12662306a36Sopenharmony_ci};
12762306a36Sopenharmony_ci
12862306a36Sopenharmony_ci&usdhc1 {
12962306a36Sopenharmony_ci	compatible = "fsl,imx8dxl-usdhc", "fsl,imx8qxp-usdhc";
13062306a36Sopenharmony_ci	interrupts = <GIC_SPI 138 IRQ_TYPE_LEVEL_HIGH>;
13162306a36Sopenharmony_ci};
13262306a36Sopenharmony_ci
13362306a36Sopenharmony_ci&usdhc2 {
13462306a36Sopenharmony_ci	compatible = "fsl,imx8dxl-usdhc", "fsl,imx8qxp-usdhc";
13562306a36Sopenharmony_ci	interrupts = <GIC_SPI 139 IRQ_TYPE_LEVEL_HIGH>;
13662306a36Sopenharmony_ci};
13762306a36Sopenharmony_ci
13862306a36Sopenharmony_ci&usdhc3 {
13962306a36Sopenharmony_ci	compatible = "fsl,imx8dxl-usdhc", "fsl,imx8qxp-usdhc";
14062306a36Sopenharmony_ci	interrupts = <GIC_SPI 140 IRQ_TYPE_LEVEL_HIGH>;
14162306a36Sopenharmony_ci};
14262306a36Sopenharmony_ci
14362306a36Sopenharmony_ci&usbotg1 {
14462306a36Sopenharmony_ci	interrupts = <GIC_SPI 169 IRQ_TYPE_LEVEL_HIGH>;
14562306a36Sopenharmony_ci	/*
14662306a36Sopenharmony_ci	 * usbotg1 and usbotg2 share one clock
14762306a36Sopenharmony_ci	 * scfw disable clock access and keep it always on
14862306a36Sopenharmony_ci	 * in case other core (M4) use one of these.
14962306a36Sopenharmony_ci	 */
15062306a36Sopenharmony_ci	clocks = <&clk_dummy>;
15162306a36Sopenharmony_ci};
152