[RFC,net-next,0/2] DSA driver draft for MaxLinear's gsw1xx series switch

Message ID 20221025135243.4038706-1-camel.guo@axis.com
Headers
Series DSA driver draft for MaxLinear's gsw1xx series switch |

Message

Camel Guo Oct. 25, 2022, 1:52 p.m. UTC
  Hi netdev,

Recently I had been working on implementing DSA driver for MaxLinear GSW145
switch. Here is my initial draft. Before proceeding futher, I am hoping to
get comments and cooperation as early/many as possible.

On my hand, I have an arm64 board with one GSW145 chip being connected via
MDIO management interface. According to the public datasheet of GSW145, the
chip itself on my board is in self-start (PS_NOWAIT=1b), managed switch
(PS_OP_MD=11) mode. On this board, only two slave ethernet ports (port0,
port1) of this chip are enabled.

As its datasheet says, this chip supports MDIO, SPI, UART management
interfaces in many operation modes (self-start/non-self-start,
managed/standalone). Unfortunately it is impossible for me to run this
draft on all of these combinations. It will be very helpful if anyone can
help to run it on different hardware setups and send the feedback back to
me.

I also noticed that lantiq_gswip.c looks similar as gsw145. I have no
access to the datasheet of the chip this file supports. Maybe they can be
merged together.

Best Regards
Camel Guo

Camel Guo (2):
  dt-bindings: net: dsa: add bindings for GSW Series switches
  net: dsa: Add driver for Maxlinear GSW1XX switch

 .../devicetree/bindings/net/dsa/mxl,gsw.yaml  | 140 +++
 .../devicetree/bindings/vendor-prefixes.yaml  |   2 +
 MAINTAINERS                                   |   9 +
 drivers/net/dsa/Kconfig                       |  16 +
 drivers/net/dsa/Makefile                      |   2 +
 drivers/net/dsa/gsw1xx.h                      |  27 +
 drivers/net/dsa/gsw1xx_core.c                 | 823 ++++++++++++++++++
 drivers/net/dsa/gsw1xx_mdio.c                 | 128 +++
 8 files changed, 1147 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/net/dsa/mxl,gsw.yaml
 create mode 100644 drivers/net/dsa/gsw1xx.h
 create mode 100644 drivers/net/dsa/gsw1xx_core.c
 create mode 100644 drivers/net/dsa/gsw1xx_mdio.c


base-commit: 6143eca3578f486e4d58fe6fb5e96a5699c86fbc