1# SPDX-License-Identifier: GPL-2.0-only
2#
3# Tulip family network device configuration
4#
5
6config NET_TULIP
7	bool "DEC - Tulip devices"
8	depends on (PCI || EISA || CARDBUS)
9	help
10	  This selects the "Tulip" family of EISA/PCI network cards.
11
12if NET_TULIP
13
14config DE2104X
15	tristate "Early DECchip Tulip (dc2104x) PCI support"
16	depends on PCI
17	select CRC32
18	help
19	  This driver is developed for the SMC EtherPower series Ethernet
20	  cards and also works with cards based on the DECchip
21	  21040 (Tulip series) chips.  Some LinkSys PCI cards are
22	  of this type.  (If your card is NOT SMC EtherPower 10/100 PCI
23	  (smc9332dst), you can also try the driver for "Generic DECchip"
24	  cards, below.  However, most people with a network card of this type
25	  will say Y here.)
26
27	  To compile this driver as a module, choose M here. The module will
28	  be called de2104x.
29
30config DE2104X_DSL
31	int "Descriptor Skip Length in 32 bit longwords"
32	depends on DE2104X
33	range 0 31
34	default 0
35	help
36	  Setting this value allows to align ring buffer descriptors into their
37	  own cache lines. Value of 4 corresponds to the typical 32 byte line
38	  (the descriptor is 16 bytes). This is necessary on systems that lack
39	  cache coherence, an example is PowerMac 5500. Otherwise 0 is safe.
40	  Default is 0, and range is 0 to 31.
41
42config TULIP
43	tristate "DECchip Tulip (dc2114x) PCI support"
44	depends on PCI
45	select CRC32
46	help
47	  This driver is developed for the SMC EtherPower series Ethernet
48	  cards and also works with cards based on the DECchip
49	  21140 (Tulip series) chips.  Some LinkSys PCI cards are
50	  of this type.  (If your card is NOT SMC EtherPower 10/100 PCI
51	  (smc9332dst), you can also try the driver for "Generic DECchip"
52	  cards, above.  However, most people with a network card of this type
53	  will say Y here.)
54
55	  To compile this driver as a module, choose M here. The module will
56	  be called tulip.
57
58config TULIP_MWI
59	bool "New bus configuration"
60	depends on TULIP
61	help
62	  This configures your Tulip card specifically for the card and
63	  system cache line size type you are using.
64
65	  This is experimental code, not yet tested on many boards.
66
67	  If unsure, say N.
68
69config TULIP_MMIO
70	bool "Use PCI shared mem for NIC registers"
71	depends on TULIP
72	help
73	  Use PCI shared memory for the NIC registers, rather than going through
74	  the Tulip's PIO (programmed I/O ports).  Faster, but could produce
75	  obscure bugs if your mainboard has memory controller timing issues.
76	  If in doubt, say N.
77
78config TULIP_NAPI
79	bool "Use RX polling (NAPI)"
80	depends on TULIP
81	help
82	  NAPI is a new driver API designed to reduce CPU and interrupt load
83	  when the driver is receiving lots of packets from the card. It is
84	  still somewhat experimental and thus not yet enabled by default.
85
86	  If your estimated Rx load is 10kpps or more, or if the card will be
87	  deployed on potentially unfriendly networks (e.g. in a firewall),
88	  then say Y here.
89
90	  If in doubt, say N.
91
92config TULIP_NAPI_HW_MITIGATION
93	bool "Use Interrupt Mitigation"
94	depends on TULIP_NAPI
95	help
96	  Use HW to reduce RX interrupts. Not strictly necessary since NAPI
97	  reduces RX interrupts by itself. Interrupt mitigation reduces RX
98	  interrupts even at low levels of traffic at the cost of a small
99	  latency.
100
101	  If in doubt, say Y.
102
103config TULIP_DM910X
104	def_bool y
105	depends on TULIP && SPARC
106
107config WINBOND_840
108	tristate "Winbond W89c840 Ethernet support"
109	depends on PCI
110	select CRC32
111	select MII
112	help
113	  This driver is for the Winbond W89c840 chip.  It also works with
114	  the TX9882 chip on the Compex RL100-ATX board.
115	  More specific information and updates are available from
116	  <http://www.scyld.com/network/drivers.html>.
117
118config DM9102
119	tristate "Davicom DM910x/DM980x support"
120	depends on PCI
121	select CRC32
122	help
123	  This driver is for DM9102(A)/DM9132/DM9801 compatible PCI cards from
124	  Davicom (<http://www.davicom.com.tw/>).  If you have such a network
125	  (Ethernet) card, say Y.  Some information is contained in the file
126	  <file:Documentation/networking/device_drivers/ethernet/dec/dmfe.rst>.
127
128	  To compile this driver as a module, choose M here. The module will
129	  be called dmfe.
130
131config ULI526X
132	tristate "ULi M526x controller support"
133	depends on PCI
134	select CRC32
135	help
136	  This driver is for ULi M5261/M5263 10/100M Ethernet Controller
137	  (<http://www.nvidia.com/page/uli_drivers.html>).
138
139	  To compile this driver as a module, choose M here. The module will
140	  be called uli526x.
141
142config PCMCIA_XIRCOM
143	tristate "Xircom CardBus support"
144	depends on CARDBUS
145	help
146	  This driver is for the Digital "Tulip" Ethernet CardBus adapters.
147	  It should work with most DEC 21*4*-based chips/ethercards, as well
148	  as with work-alike chips from Lite-On (PNIC) and Macronix (MXIC) and
149	  ASIX.
150
151	  To compile this driver as a module, choose M here. The module will
152	  be called xircom_cb.  If unsure, say N.
153
154endif # NET_TULIP
155