mbox series

[v4,0/3] net: ethernet: renesas: Add Ethernet Switch driver

Message ID 20221019083518.933070-1-yoshihiro.shimoda.uh@renesas.com (mailing list archive)
Headers show
Series net: ethernet: renesas: Add Ethernet Switch driver | expand

Message

Yoshihiro Shimoda Oct. 19, 2022, 8:35 a.m. UTC
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@renesas.com/
 - 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@renesas.com/
 - 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