[PATCH net-next 0/2] net: econet: add EcoNet EN751221 ethernet driver

Caleb James DeLisle cjd at cjdns.fr
Wed Sep 9 14:21:44 PDT 2026


The EcoNet EN751221 SoC has an Ethernet device with two ports and two
DMA engines (internally called "QDMA" because they handle both QoS and
DMA). It is fairly similar to the MediaTek and Airoha drivers, but
distinct enough that attempts to attach to those did not prove
fruitful. This ethernet device shows up in the chips based on the
EN751221 die, and also in the EN7528 chip with minor differences.

This ethernet device also has a "packet processing engine" similar to
that of the MediaTek eth driver, but that is not supported in this
driver.

This driver has been used as an OpenWrt package for about 6 months but
was not contributed until now because there was no DSA switch support
for these devices.

Signed-off-by: Caleb James DeLisle <cjd at cjdns.fr>

Caleb James DeLisle (2):
  dt-bindings: net: econet: add EN751221 ethernet
  net: econet: add EcoNet EN751221 ethernet driver

 .../bindings/net/econet,en751221-eth.yaml     |  127 ++
 MAINTAINERS                                   |    7 +
 drivers/net/ethernet/Kconfig                  |    1 +
 drivers/net/ethernet/Makefile                 |    1 +
 drivers/net/ethernet/econet/Kconfig           |   20 +
 drivers/net/ethernet/econet/Makefile          |    7 +
 drivers/net/ethernet/econet/econet_eth.c      |  334 ++++
 drivers/net/ethernet/econet/econet_eth.h      |  231 +++
 .../net/ethernet/econet/econet_eth_debug.c    |  617 +++++++
 drivers/net/ethernet/econet/econet_port.c     |  473 +++++
 drivers/net/ethernet/econet/econet_qdma.c     | 1209 +++++++++++++
 drivers/net/ethernet/econet/gdm_regs.h        | 1514 +++++++++++++++++
 drivers/net/ethernet/econet/qdma_desc.h       |  677 ++++++++
 drivers/net/ethernet/econet/qdma_regs.h       | 1243 ++++++++++++++
 14 files changed, 6461 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/net/econet,en751221-eth.yaml
 create mode 100644 drivers/net/ethernet/econet/Kconfig
 create mode 100644 drivers/net/ethernet/econet/Makefile
 create mode 100644 drivers/net/ethernet/econet/econet_eth.c
 create mode 100644 drivers/net/ethernet/econet/econet_eth.h
 create mode 100644 drivers/net/ethernet/econet/econet_eth_debug.c
 create mode 100644 drivers/net/ethernet/econet/econet_port.c
 create mode 100644 drivers/net/ethernet/econet/econet_qdma.c
 create mode 100644 drivers/net/ethernet/econet/gdm_regs.h
 create mode 100644 drivers/net/ethernet/econet/qdma_desc.h
 create mode 100644 drivers/net/ethernet/econet/qdma_regs.h

-- 
2.39.5




More information about the Linux-mediatek mailing list