This small series creates a configuration knob for PHY drivers which use
serial MII-side interfaces and support clause 37 in-band auto-negotiation
there. With this knob, phylink can control both the MAC side and the PHY
side, and keep them in sync, which is needed for a functional link. This
fixes the VSC8514 QSGMII PHY on the NXP T1040RDB and LS1028ARDB which is
described in the device tree as having in-band autoneg enabled, but
sometimes it has and sometimes not, depending on boot loader version.
Changes in v2:
Incorporated feedback from Russell, which was to consider PHYs on SFP
modules too, and unify phylink's detection of PHYs with broken in-band
autoneg with the newly introduced PHY driver methods.
https://patchwork.kernel.org/project/netdevbpf/cover/20210212172341.3489046-1-olteanv@gmail.com/
Changes in v3:
Added patch for the Atheros PHY family.
Vladimir Oltean (6):
net: phylink: pass the phy argument to phylink_sfp_config
net: phylink: introduce a generic method for querying PHY in-band
autoneg capability
net: phy: bcm84881: move the in-band capability check where it belongs
net: phylink: explicitly configure in-band autoneg for PHYs that
support it
net: phy: mscc: configure in-band auto-negotiation for VSC8514
net: phy: at803x: configure in-band auto-negotiation for AR8031/AR8033
drivers/net/phy/at803x.c | 72 ++++++++++++++++++++++++-
drivers/net/phy/bcm84881.c | 10 ++++
drivers/net/phy/mscc/mscc.h | 2 +
drivers/net/phy/mscc/mscc_main.c | 20 +++++++
drivers/net/phy/phy.c | 25 +++++++++
drivers/net/phy/phylink.c | 93 +++++++++++++++++++++++++-------
include/linux/phy.h | 25 +++++++++
7 files changed, 226 insertions(+), 21 deletions(-)
--
2.25.1