Skip to content

Commit 23020f0

Browse files
LorenzoBianconikuba-moo
authored andcommitted
net: airoha: Introduce ethernet support for EN7581 SoC
Add airoha_eth driver in order to introduce ethernet support for Airoha EN7581 SoC available on EN7581 development board (en7581-evb). EN7581 mac controller is mainly composed by the Frame Engine (PSE+PPE) and QoS-DMA (QDMA) modules. FE is used for traffic offloading (just basic functionalities are currently supported) while QDMA is used for DMA operations and QOS functionalities between the mac layer and the external modules conncted to the FE GDM ports (e.g MT7530 DSA switch or external phys). A general overview of airoha_eth architecture is reported below: ┌───────┐ ┌───────┐ │ QDMA2 │ │ QDMA1 │ └───┬───┘ └───┬───┘ │ │ ┌───────▼─────────────────────────────────────────────▼────────┐ │ │ │ P5 P0 │ │ │ │ │ │ │ ┌──────┐ │ P3 ├────► GDM3 │ │ │ └──────┘ │ │ │ │ ┌─────┐ │ │ │ PPE ◄────┤ P4 PSE │ └─────┘ │ │ │ │ │ │ │ │ ┌──────┐ │ P9 ├────► GDM4 │ │ │ └──────┘ │ │ │ │ │ │ │ P2 P1 │ └─────────┬───────────────────────────────────────────┬────────┘ │ │ ┌───▼──┐ ┌──▼───┐ │ GDM2 │ │ GDM1 │ └──────┘ └──┬───┘ │ ┌────▼─────┐ │ MT7530 │ └──────────┘ Currently only hw LAN features (QDMA1+GDM1) are available while hw WAN (QDMA2+GDM{2,3,4}) ones will be added with subsequent patches introducing traffic offloading support. Tested-by: Benjamin Larsson <benjamin.larsson@genexis.eu> Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org> Link: https://patch.msgid.link/274945d2391c195098ab180a46d0617b18b9e42c.1720818878.git.lorenzo@kernel.org Signed-off-by: Jakub Kicinski <kuba@kernel.org>
1 parent 6bc8719 commit 23020f0

4 files changed

Lines changed: 2749 additions & 1 deletion

File tree

MAINTAINERS

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -682,6 +682,15 @@ S: Supported
682682
F: fs/aio.c
683683
F: include/linux/*aio*.h
684684

685+
AIROHA ETHERNET DRIVER
686+
M: Lorenzo Bianconi <lorenzo@kernel.org>
687+
L: linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
688+
L: linux-mediatek@lists.infradead.org (moderated for non-subscribers)
689+
L: netdev@vger.kernel.org
690+
S: Maintained
691+
F: Documentation/devicetree/bindings/net/airoha,en7581-eth.yaml
692+
F: drivers/net/ethernet/mediatek/airoha_eth.c
693+
685694
AIROHA SPI SNFI DRIVER
686695
M: Lorenzo Bianconi <lorenzo@kernel.org>
687696
M: Ray Liu <ray.liu@airoha.com>

drivers/net/ethernet/mediatek/Kconfig

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,20 @@
11
# SPDX-License-Identifier: GPL-2.0-only
22
config NET_VENDOR_MEDIATEK
33
bool "MediaTek devices"
4-
depends on ARCH_MEDIATEK || SOC_MT7621 || SOC_MT7620 || COMPILE_TEST
4+
depends on ARCH_MEDIATEK || ARCH_AIROHA || SOC_MT7621 || SOC_MT7620 || COMPILE_TEST
55
help
66
If you have a Mediatek SoC with ethernet, say Y.
77

88
if NET_VENDOR_MEDIATEK
99

10+
config NET_AIROHA
11+
tristate "Airoha SoC Gigabit Ethernet support"
12+
depends on NET_DSA || !NET_DSA
13+
select PAGE_POOL
14+
help
15+
This driver supports the gigabit ethernet MACs in the
16+
Airoha SoC family.
17+
1018
config NET_MEDIATEK_SOC_WED
1119
depends on ARCH_MEDIATEK || COMPILE_TEST
1220
def_bool NET_MEDIATEK_SOC != n

drivers/net/ethernet/mediatek/Makefile

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,3 +11,4 @@ mtk_eth-$(CONFIG_NET_MEDIATEK_SOC_WED) += mtk_wed_debugfs.o
1111
endif
1212
obj-$(CONFIG_NET_MEDIATEK_SOC_WED) += mtk_wed_ops.o
1313
obj-$(CONFIG_NET_MEDIATEK_STAR_EMAC) += mtk_star_emac.o
14+
obj-$(CONFIG_NET_AIROHA) += airoha_eth.o

0 commit comments

Comments
 (0)