xref: /freebsd-src/sys/contrib/device-tree/src/arm64/freescale/imx8dxl-ss-conn.dtsi (revision 0e8011faf58b743cc652e3b2ad0f7671227610df)
17ef62cebSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0+
27ef62cebSEmmanuel Vadot/*
37ef62cebSEmmanuel Vadot * Copyright 2019~2020, 2022 NXP
47ef62cebSEmmanuel Vadot */
57ef62cebSEmmanuel Vadot
67ef62cebSEmmanuel Vadot/delete-node/ &enet1_lpcg;
77ef62cebSEmmanuel Vadot/delete-node/ &fec2;
87ef62cebSEmmanuel Vadot
984943d6fSEmmanuel Vadot/ {
107ef62cebSEmmanuel Vadot	conn_enet0_root_clk: clock-conn-enet0-root {
117ef62cebSEmmanuel Vadot		compatible = "fixed-clock";
127ef62cebSEmmanuel Vadot		#clock-cells = <0>;
137ef62cebSEmmanuel Vadot		clock-frequency = <250000000>;
147ef62cebSEmmanuel Vadot		clock-output-names = "conn_enet0_root_clk";
157ef62cebSEmmanuel Vadot	};
168d13bc63SEmmanuel Vadot
178d13bc63SEmmanuel Vadot	clk_dummy: clock-dummy {
188d13bc63SEmmanuel Vadot		compatible = "fixed-clock";
198d13bc63SEmmanuel Vadot		#clock-cells = <0>;
208d13bc63SEmmanuel Vadot		clock-frequency = <0>;
218d13bc63SEmmanuel Vadot		clock-output-names = "clk_dummy";
228d13bc63SEmmanuel Vadot	};
2384943d6fSEmmanuel Vadot};
247ef62cebSEmmanuel Vadot
2584943d6fSEmmanuel Vadot&conn_subsys {
267ef62cebSEmmanuel Vadot	eqos: ethernet@5b050000 {
277ef62cebSEmmanuel Vadot		compatible = "nxp,imx8dxl-dwmac-eqos", "snps,dwmac-5.10a";
287ef62cebSEmmanuel Vadot		reg = <0x5b050000 0x10000>;
297ef62cebSEmmanuel Vadot		interrupt-parent = <&gic>;
307ef62cebSEmmanuel Vadot		interrupts = <GIC_SPI 163 IRQ_TYPE_LEVEL_HIGH>,
317ef62cebSEmmanuel Vadot			     <GIC_SPI 162 IRQ_TYPE_LEVEL_HIGH>;
328d13bc63SEmmanuel Vadot		interrupt-names = "macirq", "eth_wake_irq";
337ef62cebSEmmanuel Vadot		clocks = <&eqos_lpcg IMX_LPCG_CLK_4>,
347ef62cebSEmmanuel Vadot			 <&eqos_lpcg IMX_LPCG_CLK_6>,
357ef62cebSEmmanuel Vadot			 <&eqos_lpcg IMX_LPCG_CLK_0>,
367ef62cebSEmmanuel Vadot			 <&eqos_lpcg IMX_LPCG_CLK_5>,
377ef62cebSEmmanuel Vadot			 <&eqos_lpcg IMX_LPCG_CLK_2>;
387ef62cebSEmmanuel Vadot		clock-names = "stmmaceth", "pclk", "ptp_ref", "tx", "mem";
397ef62cebSEmmanuel Vadot		assigned-clocks = <&clk IMX_SC_R_ENET_1 IMX_SC_PM_CLK_PER>;
407ef62cebSEmmanuel Vadot		assigned-clock-rates = <125000000>;
417ef62cebSEmmanuel Vadot		power-domains = <&pd IMX_SC_R_ENET_1>;
427ef62cebSEmmanuel Vadot		status = "disabled";
437ef62cebSEmmanuel Vadot	};
447ef62cebSEmmanuel Vadot
457ef62cebSEmmanuel Vadot	usbotg2: usb@5b0e0000 {
46fac71e4eSEmmanuel Vadot		compatible = "fsl,imx8dxl-usb", "fsl,imx7ulp-usb", "fsl,imx6ul-usb";
477ef62cebSEmmanuel Vadot		reg = <0x5b0e0000 0x200>;
487ef62cebSEmmanuel Vadot		interrupt-parent = <&gic>;
497ef62cebSEmmanuel Vadot		interrupts = <GIC_SPI 166 IRQ_TYPE_LEVEL_HIGH>;
507ef62cebSEmmanuel Vadot		fsl,usbphy = <&usbphy2>;
517ef62cebSEmmanuel Vadot		fsl,usbmisc = <&usbmisc2 0>;
527ef62cebSEmmanuel Vadot		/*
537ef62cebSEmmanuel Vadot		 * usbotg1 and usbotg2 share one clcok.
547ef62cebSEmmanuel Vadot		 * scu firmware disables the access to the clock and keeps
557ef62cebSEmmanuel Vadot		 * it always on in case other core (M4) uses one of these.
567ef62cebSEmmanuel Vadot		 */
577ef62cebSEmmanuel Vadot		clocks = <&clk_dummy>;
587ef62cebSEmmanuel Vadot		ahb-burst-config = <0x0>;
597ef62cebSEmmanuel Vadot		tx-burst-size-dword = <0x10>;
607ef62cebSEmmanuel Vadot		rx-burst-size-dword = <0x10>;
617ef62cebSEmmanuel Vadot		power-domains = <&pd IMX_SC_R_USB_1>;
627ef62cebSEmmanuel Vadot		status = "disabled";
637ef62cebSEmmanuel Vadot	};
647ef62cebSEmmanuel Vadot
657ef62cebSEmmanuel Vadot	usbmisc2: usbmisc@5b0e0200 {
667ef62cebSEmmanuel Vadot		#index-cells = <1>;
67fac71e4eSEmmanuel Vadot		compatible = "fsl,imx7ulp-usbmisc", "fsl,imx7d-usbmisc", "fsl,imx6q-usbmisc";
687ef62cebSEmmanuel Vadot		reg = <0x5b0e0200 0x200>;
697ef62cebSEmmanuel Vadot	};
707ef62cebSEmmanuel Vadot
71cb7aa33aSEmmanuel Vadot	usbphy2: usbphy@5b110000 {
727ef62cebSEmmanuel Vadot		compatible = "fsl,imx8dxl-usbphy", "fsl,imx7ulp-usbphy";
737ef62cebSEmmanuel Vadot		reg = <0x5b110000 0x1000>;
747ef62cebSEmmanuel Vadot		clocks = <&usb2_2_lpcg IMX_LPCG_CLK_7>;
757ef62cebSEmmanuel Vadot		power-domains = <&pd IMX_SC_R_USB_1_PHY>;
767ef62cebSEmmanuel Vadot		status = "disabled";
777ef62cebSEmmanuel Vadot	};
787ef62cebSEmmanuel Vadot
797ef62cebSEmmanuel Vadot	eqos_lpcg: clock-controller@5b240000 {
807ef62cebSEmmanuel Vadot		compatible = "fsl,imx8qxp-lpcg";
817ef62cebSEmmanuel Vadot		reg = <0x5b240000 0x10000>;
827ef62cebSEmmanuel Vadot		#clock-cells = <1>;
837ef62cebSEmmanuel Vadot		clocks = <&conn_enet0_root_clk>,
847ef62cebSEmmanuel Vadot			 <&conn_axi_clk>,
857ef62cebSEmmanuel Vadot			 <&conn_axi_clk>,
867ef62cebSEmmanuel Vadot			 <&clk IMX_SC_R_ENET_1 IMX_SC_PM_CLK_PER>,
877ef62cebSEmmanuel Vadot			 <&conn_ipg_clk>;
887ef62cebSEmmanuel Vadot		clock-indices = <IMX_LPCG_CLK_0>, <IMX_LPCG_CLK_2>,
897ef62cebSEmmanuel Vadot				<IMX_LPCG_CLK_4>, <IMX_LPCG_CLK_5>,
907ef62cebSEmmanuel Vadot				<IMX_LPCG_CLK_6>;
917ef62cebSEmmanuel Vadot		clock-output-names = "eqos_ptp",
927ef62cebSEmmanuel Vadot				     "eqos_mem_clk",
937ef62cebSEmmanuel Vadot				     "eqos_aclk",
947ef62cebSEmmanuel Vadot				     "eqos_clk",
957ef62cebSEmmanuel Vadot				     "eqos_csr_clk";
967ef62cebSEmmanuel Vadot		power-domains = <&pd IMX_SC_R_ENET_1>;
977ef62cebSEmmanuel Vadot	};
987ef62cebSEmmanuel Vadot
997ef62cebSEmmanuel Vadot	usb2_2_lpcg: clock-controller@5b280000 {
1007ef62cebSEmmanuel Vadot		compatible = "fsl,imx8qxp-lpcg";
1017ef62cebSEmmanuel Vadot		reg = <0x5b280000 0x10000>;
1027ef62cebSEmmanuel Vadot		#clock-cells = <1>;
1037ef62cebSEmmanuel Vadot		clock-indices = <IMX_LPCG_CLK_7>;
1047ef62cebSEmmanuel Vadot		clocks = <&conn_ipg_clk>;
1057ef62cebSEmmanuel Vadot		clock-output-names = "usboh3_2_phy_ipg_clk";
1067ef62cebSEmmanuel Vadot		power-domains = <&pd IMX_SC_R_USB_1_PHY>;
1077ef62cebSEmmanuel Vadot	};
1087ef62cebSEmmanuel Vadot
1097ef62cebSEmmanuel Vadot};
1107ef62cebSEmmanuel Vadot
111*0e8011faSEmmanuel Vadot&dma_apbh {
112*0e8011faSEmmanuel Vadot	interrupts = <GIC_SPI 176 IRQ_TYPE_LEVEL_HIGH>,
113*0e8011faSEmmanuel Vadot		     <GIC_SPI 176 IRQ_TYPE_LEVEL_HIGH>,
114*0e8011faSEmmanuel Vadot		     <GIC_SPI 176 IRQ_TYPE_LEVEL_HIGH>,
115*0e8011faSEmmanuel Vadot		     <GIC_SPI 176 IRQ_TYPE_LEVEL_HIGH>;
116*0e8011faSEmmanuel Vadot};
117*0e8011faSEmmanuel Vadot
1187ef62cebSEmmanuel Vadot&enet0_lpcg {
1197ef62cebSEmmanuel Vadot	clocks = <&conn_enet0_root_clk>,
1207ef62cebSEmmanuel Vadot		 <&conn_enet0_root_clk>,
1217ef62cebSEmmanuel Vadot		 <&conn_axi_clk>,
1227ef62cebSEmmanuel Vadot		 <&clk IMX_SC_R_ENET_0 IMX_SC_C_TXCLK>,
1237ef62cebSEmmanuel Vadot		 <&conn_ipg_clk>,
1247ef62cebSEmmanuel Vadot		 <&conn_ipg_clk>;
1257ef62cebSEmmanuel Vadot};
1267ef62cebSEmmanuel Vadot
1277ef62cebSEmmanuel Vadot&fec1 {
12884943d6fSEmmanuel Vadot	compatible = "fsl,imx8dxl-fec", "fsl,imx8qm-fec", "fsl,imx6sx-fec";
1297ef62cebSEmmanuel Vadot	interrupts = <GIC_SPI 160 IRQ_TYPE_LEVEL_HIGH>,
1307ef62cebSEmmanuel Vadot		     <GIC_SPI 158 IRQ_TYPE_LEVEL_HIGH>,
1317ef62cebSEmmanuel Vadot		     <GIC_SPI 159 IRQ_TYPE_LEVEL_HIGH>,
1327ef62cebSEmmanuel Vadot		     <GIC_SPI 161 IRQ_TYPE_LEVEL_HIGH>;
1337ef62cebSEmmanuel Vadot	assigned-clocks = <&clk IMX_SC_R_ENET_0 IMX_SC_C_CLKDIV>;
1347ef62cebSEmmanuel Vadot	assigned-clock-rates = <125000000>;
1357ef62cebSEmmanuel Vadot};
1367ef62cebSEmmanuel Vadot
137*0e8011faSEmmanuel Vadot&gpmi {
138*0e8011faSEmmanuel Vadot	interrupts = <GIC_SPI 174 IRQ_TYPE_LEVEL_HIGH>;
139*0e8011faSEmmanuel Vadot};
140*0e8011faSEmmanuel Vadot
1417ef62cebSEmmanuel Vadot&usdhc1 {
1427ef62cebSEmmanuel Vadot	compatible = "fsl,imx8dxl-usdhc", "fsl,imx8qxp-usdhc";
1437ef62cebSEmmanuel Vadot	interrupts = <GIC_SPI 138 IRQ_TYPE_LEVEL_HIGH>;
1447ef62cebSEmmanuel Vadot};
1457ef62cebSEmmanuel Vadot
1467ef62cebSEmmanuel Vadot&usdhc2 {
1477ef62cebSEmmanuel Vadot	compatible = "fsl,imx8dxl-usdhc", "fsl,imx8qxp-usdhc";
1487ef62cebSEmmanuel Vadot	interrupts = <GIC_SPI 139 IRQ_TYPE_LEVEL_HIGH>;
1497ef62cebSEmmanuel Vadot};
1507ef62cebSEmmanuel Vadot
1517ef62cebSEmmanuel Vadot&usdhc3 {
1527ef62cebSEmmanuel Vadot	compatible = "fsl,imx8dxl-usdhc", "fsl,imx8qxp-usdhc";
1537ef62cebSEmmanuel Vadot	interrupts = <GIC_SPI 140 IRQ_TYPE_LEVEL_HIGH>;
1547ef62cebSEmmanuel Vadot};
1558bab661aSEmmanuel Vadot
1568bab661aSEmmanuel Vadot&usbotg1 {
1578bab661aSEmmanuel Vadot	interrupts = <GIC_SPI 169 IRQ_TYPE_LEVEL_HIGH>;
1588bab661aSEmmanuel Vadot	/*
1598bab661aSEmmanuel Vadot	 * usbotg1 and usbotg2 share one clock
1608bab661aSEmmanuel Vadot	 * scfw disable clock access and keep it always on
1618bab661aSEmmanuel Vadot	 * in case other core (M4) use one of these.
1628bab661aSEmmanuel Vadot	 */
1638bab661aSEmmanuel Vadot	clocks = <&clk_dummy>;
1648bab661aSEmmanuel Vadot};
165