To allow to probe external PHY drivers, this patch series adds use of phylib to the smsc95xx driver.
Changes in v3: - Moved all MDI-X functionality to the corresponding phy driver; - Removed field internal_phy from a struct smsc95xx_priv; - Initialized field is_internal of a struct phy_device; - Kconfig: Added selection of PHYLIB and SMSC_PHY for USB_NET_SMSC95XX. Changes in v2: - Moved 'net' patches from here to the separate patch series; - Removed redundant call of the phy_start_aneg after phy_start; - Removed netif_dbg tracing "speed, duplex, lcladv, and rmtadv"; - mdiobus: added dependency from the usbnet device; - Moved making of the MII address from 'phy_id' and 'idx' into the function mii_address; - Moved direct MDIO accesses under condition 'if (pdata->internal_phy)', as they only need for the internal PHY; - To be sure, that this set of patches is git-bisectable, tested each sub-set of patches to be functional for both, internal and external PHYs, including suspend/resume test for the 'devices' (5.7.8-1-ARCH, Raspberry Pi 3 Model B). Andre Edich (3): smsc95xx: remove redundant function arguments smsc95xx: use usbnet->driver_priv smsc95xx: add phylib support drivers/net/phy/smsc.c | 67 ++++++ drivers/net/usb/Kconfig | 2 + drivers/net/usb/smsc95xx.c | 465 ++++++++++++++----------------------- 3 files changed, 238 insertions(+), 296 deletions(-) -- 2.28.0