Skip to content

Comments

Feature: <Ethernet> Ethernet config rework (#12)#39

Draft
mcbridematt wants to merge 12 commits intordkcentral:developfrom
mcbridematt:ethernet-config-rework
Draft

Feature: <Ethernet> Ethernet config rework (#12)#39
mcbridematt wants to merge 12 commits intordkcentral:developfrom
mcbridematt:ethernet-config-rework

Conversation

@mcbridematt
Copy link
Contributor

@mcbridematt mcbridematt commented Feb 3, 2026

Implements #12

Until now, meta-rdk-bsp-arm has used a PSM config file for the full (8+2) Ten64 board. Boards that are not Ten64's had their Ethernet interfaces adjusted to look like one (Highest priority WAN -> eth8, second highest eth6).

We now try to do this in a more RDK way by shipping PSM configs for each supported machine, with a fallback "default" suitable for machines with only two interfaces (LAN + WAN).
The appropriate PSM default config is copied on first boot before PsmSsp starts, avoiding the need to manipulate PSM config from bitbake recipes and/or bake separate rootfs images for each development board.

We also want to support variations of configurations for certain use cases (like erouter0 backwards compatibility)

As part of this, any hard coding of WAN interfaces (be it eth6, eth8 or erouter0) should be avoided.

Implemented so far:

  • Proof of concept for QEMU and Ten64 (both 4+2/RDK and 8+2 boards), MYD-LR3568 and Raspberry Pi CM4 router board (52Pi)

Still to be done:

erouter0 compatibility

Adding the DISTRO_FEATURE keyword erouter0_compatibility will modify the initial PSM config to set erouter0 as the WAN interface name:

root@rdkb-arm:/usr/ccsp/config# diff -u ../machine_configs/default.xml bbhm_def_cfg.xml
--- ../machine_configs/default.xml
+++ bbhm_def_cfg.xml
@@ -1143,7 +1143,7 @@

   <Record name="dmsb.ethlink.1.Enable" type="astr">TRUE</Record>
   <Record name="dmsb.ethlink.1.alias" type="astr">WANOE</Record>
-  <Record name="dmsb.ethlink.1.name" type="astr">eth1</Record>
+  <Record name="dmsb.ethlink.1.name" type="astr">erouter0</Record>
   <Record name="dmsb.ethlink.1.lowerlayers" type="astr"></Record>
   <Record name="dmsb.ethlink.1.macoffset" type="astr">2</Record>
   <Record name="dmsb.ethlink.1.baseiface" type="astr">eth1</Record>
@@ -1163,7 +1163,7 @@
   <Record name="dmsb.wanmanager.if.1.VirtualInterfaceifcount" type="astr">1</Record>
   <Record name="dmsb.wanmanager.if.1.VirtualInterface.1.Enable" type="astr">TRUE</Record>
   <Record name="dmsb.wanmanager.if.1.VirtualInterface.1.Alias" type="astr">WANOE</Record>
-  <Record name="dmsb.wanmanager.if.1.VirtualInterface.1.Name" type="astr">eth1</Record>
+  <Record name="dmsb.wanmanager.if.1.VirtualInterface.1.Name" type="astr">erouter0</Record>
   <Record name="dmsb.wanmanager.if.1.VirtualInterface.1.EnableMAPT" type="astr">FALSE</Record>
   <Record name="dmsb.wanmanager.if.1.VirtualInterface.1.EnableDSLite" type="astr">FALSE</Record>
   <Record name="dmsb.wanmanager.if.1.VirtualInterface.1.EnableIPoE" type="astr">FALSE</Record>

@mcbridematt mcbridematt linked an issue Feb 3, 2026 that may be closed by this pull request
@torrentius torrentius self-requested a review February 12, 2026 07:07
@torrentius torrentius changed the title (WIP) Ethernet config rework (#12) Feature: <Ethernet> Ethernet config rework (#12) Feb 13, 2026
This config is for a simple, two interface setup
(eth0 LAN, eth1 WAN), well suited for use in QEMU.
This should be controlled by PSM / TR-181 settings instead.
…faces

WAN Manager may not consider devices as available unless the
interface has been brought up.
The required steps are now performed by pre-start steps
for PsmSsp and CcspEthAgent
This is to avoid any hardcoded interface references.
The Ethernet agent calls this function to determine if an
Ethernet interface in Device.Ethernet.Interface.X is
the WAN facing one.

Originally developed by mahanteshchitt <mahantesh_chittapur@comcast.com>.
in rdkcentral@6d451ef
This invocation (mkdir -p /rdklogs/logs) will fail under a read-only
rootfs environment. We already create and mount this folder earlier
in the boot process.
This uses:
SFP1 (eth5) as 1st priority WAN
LAN4 (eth2) as 2nd priority WAN
+ cellular
@mcbridematt mcbridematt force-pushed the ethernet-config-rework branch from 973dac7 to 4c1818b Compare February 18, 2026 03:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

Status: Backlog

Development

Successfully merging this pull request may close these issues.

Feature: <PSM> Detect and modify PSM for hardware (Ethernet ports)

2 participants