]> git.ipfire.org Git - thirdparty/linux.git/commit
net: dsa: add driver for MaxLinear GSW1xx switch family
authorDaniel Golle <daniel@makrotopia.org>
Mon, 3 Nov 2025 12:20:28 +0000 (12:20 +0000)
committerJakub Kicinski <kuba@kernel.org>
Thu, 6 Nov 2025 22:16:18 +0000 (14:16 -0800)
commit22335939ec907cca26be41f10f6cc01f0df8b0e9
tree9c559caf76c50618524df6b3b372284f670bbb07
parentc6230446b1a6f3c91effafd99f604de455da52e5
net: dsa: add driver for MaxLinear GSW1xx switch family

Add driver for the MaxLinear GSW1xx family of Ethernet switch ICs which
are based on the same IP as the Lantiq/Intel GSWIP found in the Lantiq VR9
and Intel GRX MIPS router SoCs. The main difference is that instead of
using memory-mapped I/O to communicate with the host CPU these ICs are
connected via MDIO (or SPI, which isn't supported by this driver).
Implement the regmap API to access the switch registers over MDIO to allow
reusing lantiq_gswip_common for all core functionality.

The GSW1xx also comes with a SerDes port capable of 1000Base-X, SGMII and
2500Base-X, which can either be used to connect an external PHY or SFP
cage, or as the CPU port. Support for the SerDes interface is implemented
in this driver using the phylink_pcs interface.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
Tested-by: Alexander Sverdlin <alexander.sverdlin@siemens.com>
Link: https://patch.msgid.link/b567ec1b4beb08fd37abf18b280c56d5d8253c26.1762170107.git.daniel@makrotopia.org
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/dsa/lantiq/Kconfig
drivers/net/dsa/lantiq/Makefile
drivers/net/dsa/lantiq/lantiq_gswip.h
drivers/net/dsa/lantiq/mxl-gsw1xx.c [new file with mode: 0644]
drivers/net/dsa/lantiq/mxl-gsw1xx.h [new file with mode: 0644]
drivers/net/dsa/lantiq/mxl-gsw1xx_pce.h [new file with mode: 0644]