> +static int smsc95xx_start_phy(struct usbnet *dev)
> +{
> +     struct smsc95xx_priv *pdata = (struct smsc95xx_priv *)(dev-
> >data[0]);
> +     struct net_device *net = dev->net;
> +     int ret;
> +
> +     ret = smsc95xx_reset(dev);
> +     if (ret < 0)
> +             return ret;
> +
> +     /* attach the mac to the phy */
> +     ret = phy_connect_direct(net, pdata->phydev,
> +                              &smsc95xx_handle_link_change,
> +                              PHY_INTERFACE_MODE_MII);
> +     if (ret) {
> +             netdev_err(net, "can't attach PHY to %s\n", pdata-
> >mdiobus->id);
> +             return ret;
> +     }
> +
> +     phy_attached_info(net->phydev);
> +     phy_start(net->phydev);
> +     mii_nway_restart(&dev->mii);

Is mii_nway_restart() needed? phy_start will start auto-neg if needed.

It looks like after this patch you have a mixture of old MII and new
phylib. Does that work? If somebody doing a git bisect was to land on
one of these intermediary patches, so they have working Ethernet?

    Andrew

Reply via email to