1#
2# Synopsys DesignWare XGMAC configuration options
3#
4# Copyright(c) 2024, Intel Corporation
5# SPDX-License-Identifier: Apache-2.0
6#
7
8DT_COMPAT_DWC_XGMAC := snps,dwcxgmac
9
10menu "DWC XGMAC configuration"
11
12config ETH_DWC_XGMAC
13	bool "Synopsys DesignWareCore XGMAC Ethernet driver"
14	default y
15	depends on DT_HAS_SNPS_DWCXGMAC_ENABLED
16	help
17	  This is a driver for the Synopsys DesignWare XGMAC, also referred to
18	  as "DesignWare Cores Ethernet XGMAC". Hardware versions
19	  3.x are supported.
20
21	  Platform specific glue support is also required. This driver is
22	  currently available on targets using the Intel Agilex5 series.
23
24if  ETH_DWC_XGMAC
25
26config ETH_DWC_XGMAC_BOTTOM_HALF_WORK_QUEUE
27	bool "IRQ Bottom Half work Queue"
28	default y
29
30config ETH_DWC_XGMAC_SW_RESET_TIMEOUT
31	int "A timeout value in us to check software reset status"
32	default 1000
33	help
34	  A timeout value in ms to check software reset status
35
36config ETH_DWC_XGMAC_POLLING_MODE
37	bool "Polling mode"
38
39config ETH_DWC_XGMAC_INTERRUPT_POLLING_INTERVAL_US
40	int "XGMAC interrupt polling interval in us"
41	default 500
42	depends on ETH_DWC_XGMAC_POLLING_MODE
43	help
44	  XGMAC interrupt polling interval in us
45
46config ETH_XGMAC_MAX_QUEUES
47	int
48	default 8
49	help
50	  Number hardware queues supported by the XGMAC IP
51
52config ETH_DWC_XGMAC_RX_CS_OFFLOAD
53	bool "RX checksum offload"
54	default y
55	help
56	  Enable receive checksum offload for TCP/UDP/IP packets
57
58config ETH_DWC_XGMAC_TX_CS_OFFLOAD
59	bool "TX checksum offload"
60	default y
61	help
62	  Enable transmit checksum offload for TCP/UDP/IP packets
63
64config ETH_DWC_XGMAC_PROMISCUOUS_EXCEPTION
65	bool "Promiscuous mode"
66	depends on NET_PROMISCUOUS_MODE
67	help
68	  Disables the promiscuous mode support in XGMAC device.
69
70config ETH_DWC_XGMAC_HW_FILTERING
71	bool "H/W L2 Filtering"
72	help
73	  Enable Hardware support for L2 filtering of packets.
74
75config ETH_DWC_XGMAC_HW_L3_L4_FILTERING
76	bool "H/W L3 L4 Filtering"
77	help
78	  Enable Hardware support for L3 L4 filtering of packets.
79
80config ETH_DWC_XGMAC_ARP_OFFLOAD
81	bool "ARP Offload"
82	help
83	  Enable ARP hardware offloading support.
84
85endif # ETH_DWC_XGMAC
86
87endmenu
88