All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH net-next v2 0/8] rework phylink interface for split MAC/PCS support
@ 2020-02-26 10:23 ` Russell King - ARM Linux admin
  0 siblings, 0 replies; 60+ messages in thread
From: Russell King - ARM Linux admin @ 2020-02-26 10:23 UTC (permalink / raw)
  To: Andrew Lunn, Florian Fainelli, Heiner Kallweit
  Cc: linux-doc, Thomas Petazzoni, Ioana Ciornei, linux-stm32,
	Jonathan Corbet, Michal Simek, Jose Abreu, Jakub Kicinski,
	Mark Lee, Sean Wang, Alexandre Torgue, Hauke Mehrtens,
	Radhey Shyam Pandey, linux-mediatek, John Crispin,
	Matthias Brugger, Giuseppe Cavallaro, linux-arm-kernel, netdev,
	Vivien Didelot, Maxime Coquelin, Vladimir Oltean,
	David S. Miller, Felix Fietkau

Hi,

The following series changes the phylink interface to allow us to
better support split MAC / MAC PCS setups.  The fundamental change
required for this turns out to be quite simple.

Today, mac_config() is used for everything to do with setting the
parameters for the MAC, and mac_link_up() is used to inform the
MAC driver that the link is now up (and so to allow packet flow.)
mac_config() also has had a few implementation issues, with folk
who believe that members such as "speed" and "duplex" are always
valid, where "link" gets used inappropriately, etc.

With the proposed patches, all this changes subtly - but in a
backwards compatible way at this stage.

We pass the the full resolved link state (speed, duplex, pause) to
mac_link_up(), and it is now guaranteed that these parameters to
this function will always be valid (no more SPEED_UNKNOWN or
DUPLEX_UNKNOWN here - unless phylink is fed with such things.)

Drivers should convert over to using the state in mac_link_up()
rather than configuring the speed, duplex and pause in the
mac_config() method. The patch series includes a number of MAC
drivers which I've thought have been easy targets - I've left the
remainder as I think they need maintainer input. However, *all*
drivers will need conversion for future phylink development.

v2: add ocelot/felix and qca/ar9331 DSA drivers to patch 2, add
  received tested-by so far.

 Documentation/networking/sfp-phylink.rst          |  17 +++-
 drivers/net/dsa/b53/b53_common.c                  |   4 +-
 drivers/net/dsa/b53/b53_priv.h                    |   4 +-
 drivers/net/dsa/bcm_sf2.c                         |   4 +-
 drivers/net/dsa/lantiq_gswip.c                    |   4 +-
 drivers/net/dsa/mt7530.c                          |   4 +-
 drivers/net/dsa/mv88e6xxx/chip.c                  |  79 +++++++++++++----
 drivers/net/dsa/ocelot/felix.c                    |   4 +-
 drivers/net/dsa/qca/ar9331.c                      |   4 +-
 drivers/net/dsa/sja1105/sja1105_main.c            |   4 +-
 drivers/net/ethernet/cadence/macb.h               |   1 -
 drivers/net/ethernet/cadence/macb_main.c          |  57 +++++++-----
 drivers/net/ethernet/freescale/dpaa2/dpaa2-mac.c  |  61 ++++++++-----
 drivers/net/ethernet/freescale/dpaa2/dpaa2-mac.h  |   1 +
 drivers/net/ethernet/marvell/mvneta.c             |  63 ++++++++-----
 drivers/net/ethernet/marvell/mvpp2/mvpp2_main.c   | 102 +++++++++++++---------
 drivers/net/ethernet/mediatek/mtk_eth_soc.c       |   7 +-
 drivers/net/ethernet/stmicro/stmmac/stmmac_main.c |   4 +-
 drivers/net/ethernet/xilinx/xilinx_axienet_main.c |  37 ++++----
 drivers/net/phy/phylink.c                         |   9 +-
 include/linux/phylink.h                           |  57 ++++++++----
 include/net/dsa.h                                 |   4 +-
 net/dsa/port.c                                    |   7 +-
 23 files changed, 358 insertions(+), 180 deletions(-)

-- 
RMK's Patch system: https://www.armlinux.org.uk/developer/patches/
FTTC broadband for 0.8mile line in suburbia: sync at 12.1Mbps down 622kbps up
According to speedtest.net: 11.9Mbps down 500kbps up

^ permalink raw reply	[flat|nested] 60+ messages in thread

end of thread, other threads:[~2020-02-27 22:14 UTC | newest]

Thread overview: 60+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-02-26 10:23 [PATCH net-next v2 0/8] rework phylink interface for split MAC/PCS support Russell King - ARM Linux admin
2020-02-26 10:23 ` Russell King - ARM Linux admin
2020-02-26 10:23 ` Russell King - ARM Linux admin
2020-02-26 10:23 ` [PATCH net-next v2 1/8] net: phylink: propagate resolved link config via mac_link_up() Russell King
2020-02-26 10:23   ` Russell King
2020-02-26 10:23   ` Russell King
2020-02-26 11:06   ` Vladimir Oltean
2020-02-26 11:06     ` Vladimir Oltean
2020-02-26 11:06     ` Vladimir Oltean
2020-02-26 11:55     ` Russell King - ARM Linux admin
2020-02-26 11:55       ` Russell King - ARM Linux admin
2020-02-26 11:55       ` Russell King - ARM Linux admin
2020-02-26 13:00       ` Vladimir Oltean
2020-02-26 13:00         ` Vladimir Oltean
2020-02-26 13:00         ` Vladimir Oltean
2020-02-26 13:36         ` Russell King - ARM Linux admin
2020-02-26 13:36           ` Russell King - ARM Linux admin
2020-02-26 13:36           ` Russell King - ARM Linux admin
2020-02-26 18:21           ` Vladimir Oltean
2020-02-26 18:21             ` Vladimir Oltean
2020-02-26 18:21             ` Vladimir Oltean
2020-02-26 18:22             ` Vladimir Oltean
2020-02-26 18:22               ` Vladimir Oltean
2020-02-26 18:22               ` Vladimir Oltean
2020-02-26 18:25               ` Russell King - ARM Linux admin
2020-02-26 18:25                 ` Russell King - ARM Linux admin
2020-02-26 18:25                 ` Russell King - ARM Linux admin
2020-02-26 18:32               ` Ioana Ciornei
2020-02-26 18:32                 ` Ioana Ciornei
2020-02-26 18:32                 ` Ioana Ciornei
2020-02-26 19:11                 ` Russell King - ARM Linux admin
2020-02-26 19:11                   ` Russell King - ARM Linux admin
2020-02-26 19:11                   ` Russell King - ARM Linux admin
2020-02-26 10:23 ` [PATCH net-next v2 2/8] net: dsa: " Russell King
2020-02-26 10:23   ` Russell King
2020-02-26 10:23   ` Russell King
2020-02-26 10:23 ` [PATCH net-next v2 3/8] net: mv88e6xxx: use resolved link config in mac_link_up() Russell King
2020-02-26 10:23   ` Russell King
2020-02-26 10:23   ` Russell King
2020-02-26 10:23 ` [PATCH net-next v2 4/8] net: axienet: " Russell King
2020-02-26 10:23   ` Russell King
2020-02-26 10:23   ` Russell King
2020-02-26 10:24 ` [PATCH net-next v2 5/8] net: dpaa2-mac: " Russell King
2020-02-26 10:24   ` Russell King
2020-02-26 10:24   ` Russell King
2020-02-26 10:24 ` [PATCH net-next v2 6/8] net: macb: " Russell King
2020-02-26 10:24   ` Russell King
2020-02-26 10:24   ` Russell King
2020-02-26 10:24 ` [PATCH net-next v2 7/8] net: mvneta: " Russell King
2020-02-26 10:24   ` Russell King
2020-02-26 10:24   ` Russell King
2020-02-26 10:24 ` [PATCH net-next v2 8/8] net: mvpp2: " Russell King
2020-02-26 10:24   ` Russell King
2020-02-26 10:24   ` Russell King
2020-02-27 20:02 ` [PATCH net-next v2 0/8] rework phylink interface for split MAC/PCS support David Miller
2020-02-27 20:02   ` David Miller
2020-02-27 20:02   ` David Miller
2020-02-27 22:13   ` Russell King - ARM Linux admin
2020-02-27 22:13     ` Russell King - ARM Linux admin
2020-02-27 22:13     ` Russell King - ARM Linux admin

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.