Skip to content

netifd: configure EEE via ethtool netlink#80

Open
cmonroe wants to merge 1 commit into
openwrt:masterfrom
cmonroe:eee
Open

netifd: configure EEE via ethtool netlink#80
cmonroe wants to merge 1 commit into
openwrt:masterfrom
cmonroe:eee

Conversation

@cmonroe
Copy link
Copy Markdown

@cmonroe cmonroe commented May 8, 2026

The legacy ETHTOOL_SEEE ioctl is rejected by phylink-based PHY drivers that only implement the netlink set_eee path.

Switch the EEE setter to ETHTOOL_MSG_EEE_SET, falling back to the legacy ioctl when genetlink is unavailable. Expose tx_lpi, tx_lpi_timer, and advertised modes as config device options so the full netlink interface is reachable from UCI.

When eee=1 without an explicit eee_advertise list, query the PHY's supported EEE modes via ETHTOOL_MSG_EEE_GET and advertise that set.

Send MODES_OURS with NOMASK so the kernel replaces the previously advertised bitmap rather than merging with it.

The legacy ETHTOOL_SEEE ioctl is rejected by phylink-based PHY
drivers that only implement the netlink set_eee path.

Switch the EEE setter to ETHTOOL_MSG_EEE_SET, falling back to the
legacy ioctl when genetlink is unavailable. Expose tx_lpi,
tx_lpi_timer, and advertised modes as config device options so the
full netlink interface is reachable from UCI.

When eee=1 without an explicit eee_advertise list, query the PHY's
supported EEE modes via ETHTOOL_MSG_EEE_GET and advertise that set.

Send MODES_OURS with NOMASK so the kernel replaces the previously
advertised bitmap rather than merging with it.

Signed-off-by: Chad Monroe <chad@monroe.io>
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.

1 participant