[PATCH net-next 0/8] net: dsa: microchip: DSA driver support for LAN937x switch

From: Prasanna Vengateshan
Date: Thu Jan 28 2021 - 01:46:03 EST


LAN937x is a Multi-Port 100BASE-T1 Ethernet Physical Layer switch
compliant with the IEEE 802.3bw-2015 specification. The device
provides 100 Mbit/s transmit and receive capability over a single
Unshielded Twisted Pair (UTP) cable. LAN937x is successive revision
of KSZ series switch. This series of patches provide the DSA driver
support for Microchip LAN937X switch and it configures through
SPI interface.

This driver shares some of the functions from KSZ common
layer.

The LAN937x switch series family consists of following SKUs:
LAN9370:
- 4 T1 Phys
- 1 RGMII port
LAN9371:
- 3 T1 Phys & 1 TX Phy
- 2 RGMII ports
LAN9372:
- 5 T1 Phys & 1 TX Phy
- 2 RGMII ports
LAN9373:
- 5 T1 Phys
- 2 RGMII & 1 SGMII port
LAN9374:
- 6 T1 Phys
- 2 RGMII ports

More support will be added at a later stage.

Prasanna Vengateshan (8):
dt-bindings: net: dsa: dt bindings for microchip lan937x
net: dsa: microchip: add tag handling for Microchip LAN937x
net: dsa: microchip: add DSA support for microchip lan937x
net: dsa: microchip: add support for phylink management
net: dsa: microchip: add support for ethtool port counters
net: dsa: microchip: add support for port mirror operations
net: dsa: microchip: add support for fdb and mdb management
net: dsa: microchip: add support for vlan operations

.../bindings/net/dsa/microchip,lan937x.yaml | 115 ++
MAINTAINERS | 1 +
drivers/net/dsa/microchip/Kconfig | 12 +
drivers/net/dsa/microchip/Makefile | 5 +
drivers/net/dsa/microchip/ksz_common.h | 1 +
drivers/net/dsa/microchip/lan937x_dev.c | 895 ++++++++++++++
drivers/net/dsa/microchip/lan937x_dev.h | 79 ++
drivers/net/dsa/microchip/lan937x_main.c | 1037 +++++++++++++++++
drivers/net/dsa/microchip/lan937x_reg.h | 955 +++++++++++++++
drivers/net/dsa/microchip/lan937x_spi.c | 104 ++
include/net/dsa.h | 2 +
net/dsa/Kconfig | 4 +-
net/dsa/tag_ksz.c | 74 ++
13 files changed, 3282 insertions(+), 2 deletions(-)
create mode 100644 Documentation/devicetree/bindings/net/dsa/microchip,lan937x.yaml
create mode 100644 drivers/net/dsa/microchip/lan937x_dev.c
create mode 100644 drivers/net/dsa/microchip/lan937x_dev.h
create mode 100644 drivers/net/dsa/microchip/lan937x_main.c
create mode 100644 drivers/net/dsa/microchip/lan937x_reg.h
create mode 100644 drivers/net/dsa/microchip/lan937x_spi.c

--
2.25.1