Re: [PATCH net-next v11 06/15] ax88179_178a: Add HW support for AX179A-based chips
From: Andrew Lunn
Date: Tue Sep 15 2026 - 08:28:46 EST
On Tue, Sep 15, 2026 at 02:01:48AM +0200, Birger Koblitz wrote:
> On 9/14/26 18:53, Andrew Lunn wrote:
> > > > +static const struct net_device_ops ax88179a_netdev_ops = {
> > > > + .ndo_open = usbnet_open,
> > > > + .ndo_stop = usbnet_stop,
> > > > + .ndo_start_xmit = usbnet_start_xmit,
> > > > + .ndo_tx_timeout = usbnet_tx_timeout,
> > > > + .ndo_get_stats64 = dev_get_tstats64,
> > > > + .ndo_change_mtu = ax88179_change_mtu,
> > > > + .ndo_set_mac_address = ax88179_set_mac_addr,
> > > > + .ndo_validate_addr = eth_validate_addr,
> > > > + .ndo_eth_ioctl = usbnet_mii_ioctl,
> > >
> > > dev->mii.mdio_read is never initialized for ax88179a, so
> > > dev->mii.mdio_read()
> > > through usbnet_mii_ioctl() is a NULL function pointer.
> > >
> > > Something like:
> > >
> > > static int ax88179a_mii_ioctl(...)
> > > {
> > > struct ax88179_data *data = netdev2data(net);
> > > return phylink_mii_ioctl(data->phylink, ifr, cmd);
> > > }
> >
> > Is this transitory? Does a later patch fix this up?
> > The aim is to remove all dev->mii accesses.
> >
>
> No, unfortunately, this is an mii-leftover. I thought that
> usbnet was emulating the mii ioctl somehow, not that it was expecting
> to be able to use a mii_mdio_read. I will remove the
> >>> + .ndo_eth_ioctl = usbnet_mii_ioctl,
> line, entirely.
It would be nice to use what is proposed, so the ioctl keeps working.
You can test it with mii-tool.
Andrew