All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH CFT net-next 0/6] net: stmmac/xpcs: modernise PCS support
@ 2021-12-16 13:11 ` Russell King (Oracle)
  0 siblings, 0 replies; 19+ messages in thread
From: Russell King (Oracle) @ 2021-12-16 13:11 UTC (permalink / raw)
  To: Alexandre Torgue, Giuseppe Cavallaro, Jose Abreu, Maxime Coquelin
  Cc: Andrew Lunn, David S. Miller, Heiner Kallweit, Jakub Kicinski,
	Jose Abreu, linux-arm-kernel, linux-stm32, netdev

Hi,

This series updates xpcs and stmmac for the recent changes to phylink
to better support split PCS and to get rid of private MAC validation
functions.

This series is slightly more involved than other conversions as stmmac
has already had optional proper split PCS support.

The patches:

1) Provide a function to query the xpcs for the interface modes that
   are supported.

2) Populates the MAC capabilities and switches stmmac_validate() to use
   phylink_get_linkmodes(). We do not use phylink_generic_validate() yet
   as (a) we do not always have the supported interfaces populated, and
   (b) the existing code does not restrict based on interface. There
   should be no functional effect from this patch.

3) Populates phylink's supported interfaces from the xpcs when the xpcs
   is configured by firmware and also the firmware configured interface
   mode. Note: this will restrict stmmac to only supporting these
   interfaces modes - stmmac maintainers need to verify that this
   behaviour is acceptable.

4) stmmac_validate() tail-calls xpcs_validate(), but we don't need it to
   now that PCS have their own validation method. Convert stmmac and
   xpcs to use this method instead.

5) xpcs sets the poll field of phylink_pcs to true, meaning xpcs
   requires its status to be polled. There is no need to also set the
   phylink_config.pcs_poll. Remove this.

6) Switch to phylink_generic_validate(). This is probably the most
   contravertial change in this patch set as this will cause the MAC to
   restrict link modes based on the interface mode. From an inspection
   of the xpcs driver, this should be safe, as XPCS only further
   restricts the link modes to a subset of these (whether that is
   correct or not is not an issue I am addressing here.) For
   implementations that do not use xpcs, this is a more open question
   and needs feedback from stmmac maintainers.

Please review and test this series. Thanks!

 drivers/net/ethernet/stmicro/stmmac/stmmac_main.c | 144 ++++++----------------
 drivers/net/pcs/pcs-xpcs.c                        |  41 +++---
 include/linux/pcs/pcs-xpcs.h                      |   3 +-
 3 files changed, 67 insertions(+), 121 deletions(-)

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

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

end of thread, other threads:[~2022-01-07 13:48 UTC | newest]

Thread overview: 19+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-12-16 13:11 [PATCH CFT net-next 0/6] net: stmmac/xpcs: modernise PCS support Russell King (Oracle)
2021-12-16 13:11 ` Russell King (Oracle)
2021-12-16 13:12 ` [PATCH CFT net-next 1/6] net: xpcs: add support for retrieving supported interface modes Russell King (Oracle)
2021-12-16 13:12 ` [PATCH CFT net-next 2/6] net: stmmac: convert to phylink_get_linkmodes() Russell King (Oracle)
2021-12-16 13:12   ` Russell King (Oracle)
2021-12-16 13:12 ` [PATCH CFT net-next 3/6] net: stmmac: fill in supported_interfaces Russell King (Oracle)
2021-12-16 13:12   ` Russell King (Oracle)
2021-12-16 13:12 ` [PATCH CFT net-next 4/6] net: stmmac/xpcs: convert to pcs_validate() Russell King (Oracle)
2021-12-16 13:12   ` Russell King (Oracle)
2021-12-16 13:12 ` [PATCH CFT net-next 5/6] net: stmmac: remove phylink_config.pcs_poll usage Russell King (Oracle)
2021-12-16 13:12   ` Russell King (Oracle)
2021-12-16 13:12 ` [PATCH CFT net-next 6/6] net: stmmac: convert to phylink_generic_validate() Russell King (Oracle)
2021-12-16 13:12   ` Russell King (Oracle)
2021-12-17  5:57 ` [PATCH CFT net-next 0/6] net: stmmac/xpcs: modernise PCS support Wong Vee Khee
2021-12-17  5:57   ` Wong Vee Khee
2022-01-07 13:40   ` Russell King (Oracle)
2022-01-07 13:40     ` Russell King (Oracle)
2022-01-07 13:47     ` Wong Vee Khee
2022-01-07 13:47       ` Wong Vee Khee

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.