I've picked this older series from Andrew up and rebased it onto v6.2-rc1. This patch set starts the separation of C22 and C45 MDIO bus transactions at the API level to the MDIO Bus drivers. C45 read and write ops are added to the MDIO bus driver structure, and the MDIO core will try to use these ops if requested to perform a C45 transfer. If not available a fallback to the older API is made, to allow backwards compatibility until all drivers are converted. A few drivers are then converted to this new API. Link to v1: https://lore.kernel.org/netdev/20220508153049.427227-1-andrew@xxxxxxx/ To: Heiner Kallweit <hkallweit1@xxxxxxxxx> To: Russell King <linux@xxxxxxxxxxxxxxx> To: "David S. Miller" <davem@xxxxxxxxxxxxx> To: Eric Dumazet <edumazet@xxxxxxxxxx> To: Jakub Kicinski <kuba@xxxxxxxxxx> To: Paolo Abeni <pabeni@xxxxxxxxxx> To: Jose Abreu <Jose.Abreu@xxxxxxxxxxxx> To: Sergey Shtylyov <s.shtylyov@xxxxxx> To: Wei Fang <wei.fang@xxxxxxx> To: Shenwei Wang <shenwei.wang@xxxxxxx> To: Clark Wang <xiaoning.wang@xxxxxxx> To: NXP Linux Team <linux-imx@xxxxxxx> To: Sean Wang <sean.wang@xxxxxxxxxxxx> To: Landen Chao <Landen.Chao@xxxxxxxxxxxx> To: DENG Qingfang <dqfext@xxxxxxxxx> To: Florian Fainelli <f.fainelli@xxxxxxxxx> To: Vladimir Oltean <olteanv@xxxxxxxxx> To: Matthias Brugger <matthias.bgg@xxxxxxxxx> Cc: netdev@xxxxxxxxxxxxxxx Cc: linux-kernel@xxxxxxxxxxxxxxx Cc: linux-renesas-soc@xxxxxxxxxxxxxxx Cc: linux-arm-kernel@xxxxxxxxxxxxxxxxxxx Cc: linux-mediatek@xxxxxxxxxxxxxxxxxxx Cc: Andrew Lunn <andrew@xxxxxxx> Cc: Geert Uytterhoeven <geert+renesas@xxxxxxxxx> --- Andrew Lunn (12): net: mdio: Add dedicated C45 API to MDIO bus drivers net: pcs: pcs-xpcs: Use C45 MDIO API net: mdio: mdiobus_register: update validation test net: mdio: C22 is now optional, EOPNOTSUPP if not provided net: mdio: Move mdiobus_c45_addr() next to users net: mdio: mdio-bitbang: Separate C22 and C45 transactions net: mdio: mvmdio: Convert XSMI bus to new API net: ethernet: freescale: xgmac: Separate C22 and C45 transactions for xgmac net: ethernet: freescale: fec: Separate C22 and C45 transactions for xgmac net: mdio: add mdiobus_c45_read/write_nested helpers net: dsa: Separate C22 and C45 MDIO bus transaction methods net: dsa: mv88e6xxx: Separate C22 and C45 transactions drivers/net/dsa/mt7530.c | 87 ++++----- drivers/net/dsa/mt7530.h | 15 +- drivers/net/dsa/mv88e6xxx/chip.c | 175 +++++++++++++----- drivers/net/dsa/mv88e6xxx/chip.h | 7 + drivers/net/dsa/mv88e6xxx/global2.c | 66 ++++--- drivers/net/dsa/mv88e6xxx/global2.h | 18 +- drivers/net/dsa/mv88e6xxx/phy.c | 32 ++++ drivers/net/dsa/mv88e6xxx/phy.h | 4 + drivers/net/dsa/mv88e6xxx/serdes.c | 8 +- drivers/net/ethernet/freescale/fec_main.c | 153 +++++++++++----- drivers/net/ethernet/freescale/xgmac_mdio.c | 150 +++++++++++---- drivers/net/ethernet/marvell/mvmdio.c | 24 +-- drivers/net/ethernet/renesas/sh_eth.c | 37 +++- drivers/net/mdio/mdio-bitbang.c | 77 +++++--- drivers/net/pcs/pcs-xpcs.c | 4 +- drivers/net/phy/mdio_bus.c | 273 +++++++++++++++++++++++++++- include/linux/mdio-bitbang.h | 6 +- include/linux/mdio.h | 48 ++--- include/linux/phy.h | 5 + include/net/dsa.h | 2 +- 20 files changed, 891 insertions(+), 300 deletions(-) --- base-commit: 1b929c02afd37871d5afb9d498426f83432e71c2 change-id: 20221227-v6-2-rc1-c45-seperation-53f762440aa1 Best regards, -- Michael Walle <michael@xxxxxxxx>