Skip to content

RDKBACCL-1485: Verify configurable wan interface in BPI R4#67

Open
anatar818 wants to merge 1 commit into
developfrom
anatar818-patch-3
Open

RDKBACCL-1485: Verify configurable wan interface in BPI R4#67
anatar818 wants to merge 1 commit into
developfrom
anatar818-patch-3

Conversation

@anatar818

Copy link
Copy Markdown
Contributor

Reason for change: Verify configurable wan interface in BPI R4 (ethagent functionality)
Test Procedure: Build and flash the image ,Validate wan functionality for the customized interface name
Risks: None

Added logic to handle WAN physical interface name retrieval and configuration for specific platforms.
Copilot AI review requested due to automatic review settings July 7, 2026 07:53
@anatar818
anatar818 requested review from a team as code owners July 7, 2026 07:53

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds platform-specific initialization logic to support a configurable WAN interface name on BPI R4 (and related platforms) during Ethernet agent startup.

Changes:

  • Introduces a RaspberryPi/Turris/BPI-R4 init path (when FEATURE_RDKB_VLAN_MANAGER is not defined) that reads wan_physical_ifname, persists/reads it via /nvram/wan_name.txt, and configures a bridge using ip link.
  • Sets the resulting WAN bridge/interface MAC and enslaves ETHWAN_DEF_INTF_NAME under the configured bridge name.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines +3515 to +3519
memset(&macAddr,0,sizeof(macaddr_t));
getInterfaceMacAddress(&macAddr,wanPhyName);
memset(wan_mac,0,sizeof(wan_mac));
snprintf(wan_mac, sizeof(wan_mac), "%02x:%02x:%02x:%02x:%02x:%02x", macAddr.hw[0], macAddr.hw[1], macAddr.hw[2],
macAddr.hw[3], macAddr.hw[4], macAddr.hw[5]);
{
fclose(fp);
fileValue[strcspn(fileValue, "\r\n")] = '\0';
if (strcmp(fileValue, out_value) != 0)
snprintf(wan_mac, sizeof(wan_mac), "%02x:%02x:%02x:%02x:%02x:%02x", macAddr.hw[0], macAddr.hw[1], macAddr.hw[2],
macAddr.hw[3], macAddr.hw[4], macAddr.hw[5]);

v_secure_system("syscfg get wan_physical_ifname > /tmp/wan_name.txt");
#if defined(_PLATFORM_RASPBERRYPI_) || defined(_PLATFORM_TURRIS_) || defined(_PLATFORM_BANANAPI_R4_) || defined(_COSA_QCA_ARM_)
#if (defined(_PLATFORM_RASPBERRYPI_) || defined(_PLATFORM_TURRIS_) || defined(_PLATFORM_BANANAPI_R4_)) && !defined(FEATURE_RDKB_VLAN_MANAGER)

char wanPhyName[20] = {0},out_value[20] = {0},fileValue[20] = {0};;
Comment on lines +3464 to +3468
#if (defined(_PLATFORM_RASPBERRYPI_) || defined(_PLATFORM_TURRIS_) || defined(_PLATFORM_BANANAPI_R4_)) && !defined(FEATURE_RDKB_VLAN_MANAGER)

char wanPhyName[20] = {0},out_value[20] = {0},fileValue[20] = {0};;
FILE *fp = NULL;
macaddr_t macAddr;
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants