This patch series is based on next-20221017. Add minimal support for R-Car S4-8 Etherent Switch. This hardware supports a lot of features. But, this driver only supports it as act as an ethernet controller for now. Notes that this driver requires modification of marvell10g driver. I'll submit the patches as RFC later. Changes from v3: https://lore.kernel.org/all/20220922052803.3442561-1-yoshihiro.shimoda.uh@xxxxxxxxxxx/ - Rebased on next-20221017. - Rename dt-binding file. - Fix a lot of things about dt-binding. - Remove unneeded clocks/resets property. - Fix a lot of things about the rswitch driver. -- Fix a lot of sparse warnings. -- Naming of definitations/variables for readability. -- Add supports for all ports, especially using direct descriptor mode for sending frames from CPU to the specific user port. --- Refactor the initialization sequence to support all ports. (Especially, this is for SERDES which needs all black magic...) - Add protection for multiple registers access in the ptp driver. Changes from v2: https://lore.kernel.org/all/20220921084745.3355107-1-yoshihiro.shimoda.uh@xxxxxxxxxxx/ - Separate patcheas into each subsystem. - Add spin lock protection for multiple registers access in patch [3/3]. Yoshihiro Shimoda (3): dt-bindings: net: renesas: Document Renesas Ethernet Switch net: ethernet: renesas: Add Ethernet Switch driver net: ethernet: renesas: rswitch: Add R-Car Gen4 gPTP support .../net/renesas,r8a779f0-ether-switch.yaml | 265 +++ drivers/net/ethernet/renesas/Kconfig | 11 + drivers/net/ethernet/renesas/Makefile | 4 + drivers/net/ethernet/renesas/rcar_gen4_ptp.c | 181 ++ drivers/net/ethernet/renesas/rcar_gen4_ptp.h | 72 + drivers/net/ethernet/renesas/rswitch.c | 1874 +++++++++++++++++ drivers/net/ethernet/renesas/rswitch.h | 980 +++++++++ 7 files changed, 3387 insertions(+) create mode 100644 Documentation/devicetree/bindings/net/renesas,r8a779f0-ether-switch.yaml create mode 100644 drivers/net/ethernet/renesas/rcar_gen4_ptp.c create mode 100644 drivers/net/ethernet/renesas/rcar_gen4_ptp.h create mode 100644 drivers/net/ethernet/renesas/rswitch.c create mode 100644 drivers/net/ethernet/renesas/rswitch.h -- 2.25.1