mbox series

[net-next,0/2] Convert ocelot to phylink

Message ID 20210815005622.1215653-1-vladimir.oltean@nxp.com
Headers show
Series Convert ocelot to phylink | expand

Message

Vladimir Oltean Aug. 15, 2021, 12:56 a.m. UTC
The ocelot switchdev and felix dsa drivers are interesting because they
target the same class of hardware switches but used in different modes.

Colin has an interesting use case where he wants to use a hardware
switch supported by the ocelot switchdev driver with the felix dsa
driver.

So far, the existing hardware revisions were similar between the ocelot
and felix drivers, but not completely identical. With identical hardware,
it is absurd that the felix driver uses phylink while the ocelot driver
uses phylib - this should not be one of the differences between the
switchdev and dsa driver, and we could eliminate it.

Colin will need the common phylink support in ocelot and felix when
adding a phylink_pcs driver for the PCS1G block inside VSC7514, which
will make the felix driver work with either the NXP or the Microchip PCS.

As usual, Alex, Horatiu, sorry for bugging you, but it would be
appreciated if you could give this a quick run on actual VSC7514
hardware (which I don't have) to make sure I'm not introducing any
breakage.

Vladimir Oltean (2):
  net: dsa: felix: stop calling ocelot_port_{enable,disable}
  net: mscc: ocelot: convert to phylink

 drivers/net/dsa/ocelot/felix.c             | 109 +--------
 drivers/net/dsa/ocelot/felix.h             |   1 +
 drivers/net/ethernet/mscc/Kconfig          |   2 +-
 drivers/net/ethernet/mscc/ocelot.c         | 174 ++++++++------
 drivers/net/ethernet/mscc/ocelot.h         |  11 +-
 drivers/net/ethernet/mscc/ocelot_net.c     | 254 +++++++++++++++++----
 drivers/net/ethernet/mscc/ocelot_vsc7514.c |  59 +----
 include/soc/mscc/ocelot.h                  |  21 +-
 8 files changed, 339 insertions(+), 292 deletions(-)