Subject: [PATCH net-next 00/12] RollBall / Hilink / Turris 10G copper SFP support

From: Marek Behún <[email-masked]>
Date: Fri, 30 Sep 2022 16:20:58 +0200

Hello,

I am resurrecting my attempt to add support for RollBall / Hilink /
Turris 10G copper SFPs modules.

The modules contain Marvell 88X3310 PHY, which can communicate with
the system via sgmii, 2500base-x, 5gbase-r, 10gbase-r or usxgmii mode.

Some of the patches I've taken from Russell King's net-queue [1]
(with some rebasing).

The important change from my previous attempts are:
- I am including the changes needed to phylink and marvell10g driver,
  so that the 88X3310 PHY is configured to use PHY modes supported by
  the host (the PHY defaults to use 10gbase-r only on host's side)
- I have changed the patch that informs phylib about the interfaces
  supported by the host (patch 5 of this series): it now fills in the
  phydev->host_interfaces member only when connecting a PHY that is
  inside a SFP module. This may change in the future.

Marek

[1] http://git.armlinux.org.uk/cgit/linux-arm.git/?h=net-queue

Marek Behún (7):
  net: phylink: pass supported host PHY interface modes to phylib for
    SFP's PHYs
  net: phy: marvell10g: Use tabs instead of spaces for indentation
  net: phylink: allow attaching phy for SFP modules on 802.3z mode
  net: sfp: Add and use macros for SFP quirks definitions
  net: sfp: create/destroy I2C mdiobus before PHY probe/after PHY
    release
  net: phy: mdio-i2c: support I2C MDIO protocol for RollBall SFP modules
  net: sfp: add support for multigig RollBall transceivers

Russell King (3):
  net: sfp: augment SFP parsing with phy_interface_t bitmap
  net: phylink: use phy_interface_t bitmaps for optical modules
  net: phy: marvell10g: select host interface configuration

Russell King (Oracle) (2):
  net: phylink: add ability to validate a set of interface modes
  net: phylink: rename phylink_sfp_config()

 drivers/net/mdio/mdio-i2c.c       | 310 +++++++++++++++++++++++++++++-
 drivers/net/phy/at803x.c          |   3 +-
 drivers/net/phy/marvell-88x2222.c |   3 +-
 drivers/net/phy/marvell.c         |   3 +-
 drivers/net/phy/marvell10g.c      | 133 ++++++++++++-
 drivers/net/phy/phylink.c         | 210 +++++++++++++++-----
 drivers/net/phy/sfp-bus.c         |  75 ++++++--
 drivers/net/phy/sfp.c             | 179 +++++++++++------
 drivers/net/phy/sfp.h             |   3 +-
 include/linux/mdio/mdio-i2c.h     |  10 +-
 include/linux/phy.h               |   4 +
 include/linux/sfp.h               |   5 +-
 12 files changed, 797 insertions(+), 141 deletions(-)

-- 
2.35.1