Skip to main content

v2n-ethernet-dual

Brings up both RTL8211FDI Ethernet PHYs on the V2N module (ET0 + ET1), exercises the management surface (MDIO probe, soft-reset, autoneg restart, link-status read), and configures Wake-on-LAN.

Source: examples/v2n/v2n-ethernet-dual/.

What it does

For each of the two on-module PHYs:

  1. rtl8211fdi_init(...) — MDIO probes the chip, reads PHYID1 + PHYID2. Confirms the Realtek OUI (0x001C).
  2. rtl8211fdi_soft_reset(...) — IEEE-spec BMCR reset; waits for the chip to self-clear within 500 ms.
  3. rtl8211fdi_restart_autoneg(...) — BMCR autoneg enable + restart.
  4. rtl8211fdi_get_link(...) — decodes the Realtek-extended page-0xA43 reg-0x1A PHY-specific status to report up/down + speed + duplex.

Then configures Wake-on-LAN on PHY 0 with a locally-administered MAC.

board.yaml

schema_version: 2

som:
sku: E1M-V2N101

carrier:
name: E1M-X-EVK

cores:
a55_cluster:
os: yocto
app: ./linux
image: alp-image-edge

chips:
- rtl8211fdi

diagnostics:
log_level: info

Expected output

[v2n-ethernet] dual RTL8211FDI exercise
[phy0] init -> status=0 PHYID1=0x001c PHYID2=0xc916
[phy0] reset -> status=0
[phy0] autoneg restart -> status=0
[phy0] link -> status=0 up=1 speed=1000 full_duplex=1
[phy1] init -> status=0 PHYID1=0x001c PHYID2=0xc916
[phy1] reset -> status=0
[phy1] autoneg restart -> status=0
[phy1] link -> status=0 up=1 speed=1000 full_duplex=1
[phy0] wol_set_mac -> status=0
[phy0] wol_enable -> status=0
[v2n-ethernet] done

See also

Questions about this page? Discuss in Community Forum