Re: [PATCH 3/9] ax88179_178a: Add support for AX88179A MMD access
From: Maxime Chevallier <maxime.chevallier@bootlin.com>
Date: 2026-07-01 09:53:23
Also in:
linux-usb, lkml
Hi, On 7/1/26 07:42, Birger Koblitz wrote:
The AX88179A uses a much simpler Clause-45 MMD access interface, make use of this interface and abstract MMD read/write operations for the AX88179 and AX88179A architecture by introducing ax_read_mmd() and ax_write_mmd(), which in turn call the chips' respective implementation. Make use of the MMD read/write functions in the link-speed and EEE configuration settings via ethtool in order to support the AX179A-based chips. The AX88279 supports EEE only at 1000MBit speed, the other chips require full duplex.
Please split this into smaller patches, one for the mmd accessor conversion, one for eee, one for the new chip support, etc.
Signed-off-by: Birger Koblitz <redacted>
[...]
quoted hunk ↗ jump to hunk
@@ -866,34 +924,63 @@ static int ax88179_set_link_ksettings(struct net_device *net, const struct ethtool_link_ksettings *cmd) { struct usbnet *dev = netdev_priv(net); + struct ax88179_data *data; + int v; + + data = dev->driver_priv; + + /* mii_ethtool_set_link_ksettings handles unknown bits in MII_ADVERTISE + * transparently, so for the 2.5GBit link speed of the AX_VERSION_AX88279 + * we just set up ADVERTISE_RESV before calling mii_ethtool_set_link_ksettings + * at least for speeds < 2500 + */
ADVERTISE_RESV isn't an unknown bit, it's been added in 802.3 as ADVERTISE_XNP
for Extended Next Page, see :
commit e7a62edd34b1 ("net: phy: qcom: at803x: Use the correct bit to disable extended next page")
we shoudln't use ADVERTISE_RESV anymore in-kernel (there are a few callsites left).
As this seems to be a vendor-specific behaviour for that bit, please add a
local #define for it in this driver, to make it clear that this is a device-specific
value.
Thanks,
Maxime