[PATCH RFC 0/9] Add and use helper for PCS negotiation modes

Russell King (Oracle) linux at armlinux.org.uk
Tue May 23 08:54:37 PDT 2023


Hi,

Earlier this month, I proposed a helper for deciding whether a PCS
should use inband negotiation modes or not. There was some discussion
around this topic, and I believe there was no disagreement about
providing the helper.

The discussion can be found at:

https://lore.kernel.org/r/ZGIkGmyL8yL1q1zp@shell.armlinux.org.uk

This series adds that helper, and modifies most code to use it. I have
a couple of further patches that hoist this function out of every PCS
driver and into phylink's new phylink_pcs_config() function that I've
posted separately, and drop the "mode" argument to the pcs_config()
method, instead passing the result of phylink_pcs_neg_mode().

I haven't included those because this series doesn't update everything
in net-next, but for RFC purposes, I think this is good enough to get
a few whether people are generally happy or not.

Note that this helper is only about modes that affect the PCS such as
the SGMII family and 802.3z types, not amount negotiation that happens
in order to select a PCS (e.g. for backplanes.)

 drivers/net/dsa/qca/qca8k-8xxx.c                   | 13 ++--
 drivers/net/ethernet/freescale/fman/fman_dtsec.c   |  7 +-
 drivers/net/ethernet/marvell/mvneta.c              |  5 +-
 drivers/net/ethernet/marvell/mvpp2/mvpp2_main.c    |  4 +-
 .../net/ethernet/marvell/prestera/prestera_main.c  | 10 ++-
 .../ethernet/microchip/lan966x/lan966x_phylink.c   |  8 ++-
 .../net/ethernet/microchip/sparx5/sparx5_phylink.c |  8 ++-
 drivers/net/ethernet/xilinx/xilinx_axienet_main.c  |  5 +-
 drivers/net/pcs/pcs-lynx.c                         | 18 +++--
 drivers/net/phy/phylink.c                          | 14 ++--
 include/linux/phylink.h                            | 81 +++++++++++++++++++++-
 11 files changed, 136 insertions(+), 37 deletions(-)

-- 
RMK's Patch system: https://www.armlinux.org.uk/developer/patches/
FTTP is here! 80Mbps down 10Mbps up. Decent connectivity at last!



More information about the linux-arm-kernel mailing list