[PATCH 2/2] arm64: dts: freescale: imx95-aquila: Add ENETC port 2 in SGMII mode
From: Franz Schnyder
Date: Thu Sep 03 2026 - 13:15:46 EST
From: Franz Schnyder <franz.schnyder@xxxxxxxxxxx>
The Aquila ETH_2 uses the ENETC port 2 as a SGMII Ethernet interface
on the Development and Clover carrier board.
Enable the required support.
Signed-off-by: Franz Schnyder <franz.schnyder@xxxxxxxxxxx>
---
arch/arm64/boot/dts/freescale/imx95-aquila-clover.dts | 18 ++++++++++++++++++
arch/arm64/boot/dts/freescale/imx95-aquila-dev.dts | 18 ++++++++++++++++++
arch/arm64/boot/dts/freescale/imx95-aquila.dtsi | 7 +++++++
3 files changed, 43 insertions(+)
diff --git a/arch/arm64/boot/dts/freescale/imx95-aquila-clover.dts b/arch/arm64/boot/dts/freescale/imx95-aquila-clover.dts
index fd93043314466..365bce73eddd3 100644
--- a/arch/arm64/boot/dts/freescale/imx95-aquila-clover.dts
+++ b/arch/arm64/boot/dts/freescale/imx95-aquila-clover.dts
@@ -67,6 +67,15 @@ &enetc_port0 {
status = "okay";
};
+/* Aquila ETH_2_XGMII */
+&enetc_port2 {
+ phy-handle = <ðphy2>;
+ phy-mode = "sgmii";
+ managed = "in-band-status";
+
+ status = "okay";
+};
+
/* Aquila CAN_1 */
&flexcan1 {
status = "okay";
@@ -227,6 +236,15 @@ &lpuart7 {
status = "okay";
};
+/* Aquila ETH_2_XGMII_MDIO, shared between all ethernet ports */
+&netc_emdio {
+ ethphy2: ethernet-phy@4 {
+ reg = <4>;
+ interrupt-parent = <&som_gpio_expander_1>;
+ interrupts = <8 IRQ_TYPE_EDGE_FALLING>;
+ };
+};
+
/* Aquila PCIE_1 */
&pcie0 {
status = "okay";
diff --git a/arch/arm64/boot/dts/freescale/imx95-aquila-dev.dts b/arch/arm64/boot/dts/freescale/imx95-aquila-dev.dts
index 3df17700b632f..2ff7bb8d6ac43 100644
--- a/arch/arm64/boot/dts/freescale/imx95-aquila-dev.dts
+++ b/arch/arm64/boot/dts/freescale/imx95-aquila-dev.dts
@@ -99,11 +99,29 @@ &dsi2dp_out {
remote-endpoint = <&dp_1_connector_in>;
};
+/* Aquila ETH_2_XGMII_MDIO, shared between all ethernet ports */
+&netc_emdio {
+ ethphy2: ethernet-phy@4 {
+ reg = <4>;
+ interrupt-parent = <&som_gpio_expander_1>;
+ interrupts = <8 IRQ_TYPE_EDGE_FALLING>;
+ };
+};
+
/* Aquila ETH_1 */
&enetc_port0 {
status = "okay";
};
+/* Aquila ETH_2_XGMII */
+&enetc_port2 {
+ phy-handle = <ðphy2>;
+ phy-mode = "sgmii";
+ managed = "in-band-status";
+
+ status = "okay";
+};
+
/* Aquila CAN_1 */
&flexcan1 {
status = "okay";
diff --git a/arch/arm64/boot/dts/freescale/imx95-aquila.dtsi b/arch/arm64/boot/dts/freescale/imx95-aquila.dtsi
index 69dc962a24a1d..f930965cb341f 100644
--- a/arch/arm64/boot/dts/freescale/imx95-aquila.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx95-aquila.dtsi
@@ -16,6 +16,7 @@ aliases {
can3 = &flexcan4;
eeprom0 = &som_eeprom;
ethernet0 = &enetc_port0;
+ ethernet1 = &enetc_port2;
i2c0 = &lpi2c3;
i2c1 = &lpi2c2;
i2c2 = &i3c2;
@@ -209,6 +210,12 @@ &enetc_port0 {
phy-mode = "rgmii-id";
};
+/* Aquila ETH_2_XGMII */
+&enetc_port2 {
+ clocks = <&clk_serdes_eth_ref>;
+ clock-names = "ref";
+};
+
/* Aquila CAN_1 */
&flexcan1 {
pinctrl-names = "default";
--
2.43.0