Skip to content

Commit d1ff5e5

Browse files
drivers: ethernet: Add Xilinx Axi Ethernet Lite
This commit adds support for the Xilinx AXI Ethernet Lite device, also known as the emaclite. The emaclite is a light-weight 10/100 MII Ethernet device. It foregoes a DMA to reduce chip area. Instead, it uses memory-mapped transmit/receive buffers. A selection of features can optionally be enabled: - a second ("pong") RX/TX Buffer - MDIO support - Interrupt support This driver handles the MAC functionality of the core; a driver for the MDIO part is introduced separately as an MDIO driver. Signed-off-by: Eric Ackermann <[email protected]>
1 parent 312192d commit d1ff5e5

File tree

6 files changed

+639
-0
lines changed

6 files changed

+639
-0
lines changed

drivers/ethernet/CMakeLists.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,7 @@ zephyr_library_sources_ifdef(CONFIG_ETH_SY1XX eth_sensry_sy1xx_mac.c)
5858
zephyr_library_sources_ifdef(CONFIG_ETH_TEST eth_test.c)
5959
zephyr_library_sources_ifdef(CONFIG_ETH_VIRTIO_NET eth_virtio_net.c)
6060
zephyr_library_sources_ifdef(CONFIG_ETH_W5500 eth_w5500.c)
61+
zephyr_library_sources_ifdef(CONFIG_ETH_XILINX_AXI_ETHERNET_LITE eth_xilinx_axi_ethernet_lite.c)
6162
zephyr_library_sources_ifdef(CONFIG_ETH_XILINX_AXIENET eth_xilinx_axienet.c)
6263
zephyr_library_sources_ifdef(CONFIG_ETH_XLNX_GEM eth_xlnx_gem.c)
6364
zephyr_library_sources_ifdef(CONFIG_ETH_XLNX_GEM phy_xlnx_gem.c)

drivers/ethernet/Kconfig

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,7 @@ source "drivers/ethernet/Kconfig.sy1xx_mac"
7777
source "drivers/ethernet/Kconfig.test"
7878
source "drivers/ethernet/Kconfig.virtio_net"
7979
source "drivers/ethernet/Kconfig.w5500"
80+
source "drivers/ethernet/Kconfig.xilinx_axi_ethernet_lite"
8081
source "drivers/ethernet/Kconfig.xilinx_axienet"
8182
source "drivers/ethernet/Kconfig.xlnx_gem"
8283
source "drivers/ethernet/Kconfig.xmc4xxx"
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
#
2+
#Xilinx AXI Ethernet Lite
3+
#
4+
#Copyright(c) 2025, CISPA Helmholtz Center for Information Security
5+
#SPDX-License-Identifier: Apache-2.0
6+
#
7+
8+
menuconfig ETH_XILINX_AXI_ETHERNET_LITE
9+
bool "Xilinx AXI Ethernet Lite Driver"
10+
default y
11+
depends on DT_HAS_XLNX_XPS_ETHERNETLITE_3_00_A_MAC_ENABLED
12+
depends on LITTLE_ENDIAN # byte order operations might break for BE
13+
help
14+
Enable Xilinx AXI Ethernet Lite MAC driver, commonly found on Xilinx FPGAs and SoCs.
15+
16+
config ETH_XILINX_AXI_ETHERNET_LITE_TIMER_PERIOD
17+
int "Xilinx AXI Ethernet Lite Timer Period in ms"
18+
default 1
19+
depends on ETH_XILINX_AXI_ETHERNET_LITE
20+
help
21+
Period for periodic RX timer task in AXI Ethernet Lite.
22+
Useful when either no IRQs are available at all
23+
or when IRQs are not handled reliably by the interrupt controller.
24+
Set to 0 to disable this feature.

0 commit comments

Comments
 (0)