AM6442: Single port network topology DT setup

Part Number: AM6442
Other Parts Discussed in Thread: DP83869, SYSCONFIG

Hi,

I have a couple of questions regarding setting up ethernet on PRU_ICSSG.

I would like to setup the network topology in single port mode using a single dp83869 PHY in fiber mode:

Single Port Mode

In this mode only one of the PRU-ICSS Ethernet ports are used. This is the simplest mode and works as you would expect it to.

The documentation also states:

Limitations

Both MIIx ports have to be enabled in DT even if one of them is not used (no Ethernet PHY wired) for proper PRU_ICSSG Ethernet driver work. Use fixed-link for unused port as workaround

QUESTIONS:

1) How do I setup the device tree to accomplish this? The limitation states that the workaround for using a single MII port is to used fixed link. Does that mean I would use something like the following modification to the DT?

From 1ec7fbf339bbd7d8d99d5769a116cd985b6fcd5f Mon Sep 17 00:00:00 2001
From: jweyer <jweyer@aecontrols.com>
Date: Wed, 14 Jan 2026 16:17:29 -0800
Subject: [PATCH] single port patch

---
 .../boot/dts/ti/k3-am642-phyboard-electra-rdk.dts      | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/arch/arm64/boot/dts/ti/k3-am642-phyboard-electra-rdk.dts b/arch/arm64/boot/dts/ti/k3-am642-phyboard-electra-rdk.dts
index 97ca16f00cd2..e9fb7cbee5b8 100644
--- a/arch/arm64/boot/dts/ti/k3-am642-phyboard-electra-rdk.dts
+++ b/arch/arm64/boot/dts/ti/k3-am642-phyboard-electra-rdk.dts
@@ -281,10 +281,14 @@ icssg1_emac0: port@0 {
 				local-mac-address = [00 00 00 00 00 00];
 			};
 			icssg1_emac1: port@1 {
-				reg = <1>;
-				/* Filled in by bootloader */
+				phy-mode = "rgmii-rxid";
+				syscon-rgmii-delay = <&scm_conf 0x4124>;
 				local-mac-address = [00 00 00 00 00 00];
-				status = "disabled";
+
+				fixed-link {
+					speed = <1000>;
+					full-duplex;
+				};
 			};
 		};
 	};
-- 
2.25.1

2) How do I set the PHY type to dp83869? Do I just need to modify the the icssg0_mdio node to let it know what PHY hardware it will be interfacing with? It seems like I would need to do more than this; however, I can't find any examples that do.

From befa78bc09093e58266136b7f111edce0af608e3 Mon Sep 17 00:00:00 2001
From: jweyer <jweyer@aecontrols.com>
Date: Wed, 14 Jan 2026 16:48:24 -0800
Subject: [PATCH] phy type

---
 arch/arm64/boot/dts/ti/k3-am642-phyboard-electra-rdk.dts | 1 +
 1 file changed, 1 insertion(+)

diff --git a/arch/arm64/boot/dts/ti/k3-am642-phyboard-electra-rdk.dts b/arch/arm64/boot/dts/ti/k3-am642-phyboard-electra-rdk.dts
index e9fb7cbee5b8..866aabc6ee3c 100644
--- a/arch/arm64/boot/dts/ti/k3-am642-phyboard-electra-rdk.dts
+++ b/arch/arm64/boot/dts/ti/k3-am642-phyboard-electra-rdk.dts
@@ -832,6 +832,7 @@ icssg1_phy1: ethernet-phy@f {
 		reg = <0xf>;
 		tx-internal-delay-ps = <250>;
 		rx-internal-delay-ps = <2000>;
+		ti,fifo-depth = <DP83869_PHYCR_FIFO_DEPTH_4_B_NIB>;
 	};
 };
 
-- 
2.25.1

3) It is my understanding that the ti-prueth driver configures the pinmux for MII and that remoteproc uploads the ethernet firmware. I am assuming that sysconfig is used to build the ethernet firmware that is loaded onto the PRUs. If this is the case how does the pinmuxing defined in sysconfig not conflict/overwrite the pinmux setup by ti-prueth?


4) How do I change the DT to configure for fiber mode?

Thanks for your help,

Jared Weyer