[PATCH net-next 0/7] net: xilinx: axienet: Add 10G/25G (XXV) ethernet support

Suraj Gupta posted 7 patches 1 day, 8 hours ago
.../bindings/net/xlnx,axi-ethernet.yaml       | 144 ++++-
.../driver-api/driver-model/devres.rst        |   1 +
drivers/clk/clk-devres.c                      |   7 +
drivers/net/ethernet/xilinx/Makefile          |   3 +-
drivers/net/ethernet/xilinx/xilinx_axienet.h  |  90 +++
.../net/ethernet/xilinx/xilinx_axienet_main.c | 603 ++++++++++++------
.../net/ethernet/xilinx/xilinx_axienet_xxv.c  | 594 +++++++++++++++++
.../net/ethernet/xilinx/xilinx_axienet_xxv.h  | 141 ++++
include/linux/clk.h                           |  23 +
9 files changed, 1397 insertions(+), 209 deletions(-)
create mode 100644 drivers/net/ethernet/xilinx/xilinx_axienet_xxv.c
create mode 100644 drivers/net/ethernet/xilinx/xilinx_axienet_xxv.h
[PATCH net-next 0/7] net: xilinx: axienet: Add 10G/25G (XXV) ethernet support
Posted by Suraj Gupta 1 day, 8 hours ago
This patch series extends the AXI Ethernet driver to support the
XXV Ethernet subsystem

- Add a devm_clk_bulk_get_enable() helper for consumers that need a set
  of mandatory clocks enabled with device-managed cleanup.

- Refactor through struct axienet_config so per-MAC behaviour is
  expressed as capability flags and callbacks instead of runtime
  MAC-type checks in the shared code.

- Document the XXV IP in Devicetree.

- Add support for the XXV Ethernet subsystem.

- Add a preparatory RMON cleanup, a statistics-ops refactor of
  struct axienet_config, and ethtool / ndo_get_stats64 counter reporting
  for XXV.

Notes:
- This series depends on [1], which is sent as part of another series.
  That change is required for this series to compile and is not included
  here to avoid duplication.
- Due to phylink limitations, we aren't able to advertise both 10G and
  25G base-r interfaces and switch between them using ethtool.
  We are open to suggestions on how to handle this.

[1]: https://lore.kernel.org/all/20260717090824.2364230-1-srinivas.neeli@amd.com/

Suraj Gupta (7):
  clk: Add devm_clk_bulk_get_enable()
  net: xilinx: axienet: Introduce axienet_config for MAC-specific ops
  dt-bindings: net: xlnx,axi-ethernet: Add 10G/25G (XXV) ethernet
  net: xilinx: axienet: Add 10G/25G (XXV) ethernet support
  net: xilinx: axienet: Make axienet_rmon_ranges non-static for reuse
  net: xilinx: axienet: Dispatch statistics through axienet_config ops
  net: xilinx: axienet: Add statistics support for XXV ethernet

 .../bindings/net/xlnx,axi-ethernet.yaml       | 144 ++++-
 .../driver-api/driver-model/devres.rst        |   1 +
 drivers/clk/clk-devres.c                      |   7 +
 drivers/net/ethernet/xilinx/Makefile          |   3 +-
 drivers/net/ethernet/xilinx/xilinx_axienet.h  |  90 +++
 .../net/ethernet/xilinx/xilinx_axienet_main.c | 603 ++++++++++++------
 .../net/ethernet/xilinx/xilinx_axienet_xxv.c  | 594 +++++++++++++++++
 .../net/ethernet/xilinx/xilinx_axienet_xxv.h  | 141 ++++
 include/linux/clk.h                           |  23 +
 9 files changed, 1397 insertions(+), 209 deletions(-)
 create mode 100644 drivers/net/ethernet/xilinx/xilinx_axienet_xxv.c
 create mode 100644 drivers/net/ethernet/xilinx/xilinx_axienet_xxv.h


base-commit: 67ce33d8d0d166bc9e445d6e42a75b131ed23a7b
-- 
2.25.1