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 DE4X5
108	tristate "Generic DECchip & DIGITAL EtherWORKS PCI/EISA"
109	depends on (PCI || EISA)
110	depends on VIRT_TO_BUS || ALPHA || PPC || SPARC
111	select CRC32
112	help
113	  This is support for the DIGITAL series of PCI/EISA Ethernet cards.
114	  These include the DE425, DE434, DE435, DE450 and DE500 models.  If
115	  you have a network card of this type, say Y.  More specific
116	  information is contained in
117	  <file:Documentation/networking/device_drivers/dec/de4x5.rst>.
118
119	  To compile this driver as a module, choose M here. The module will
120	  be called de4x5.
121
122config WINBOND_840
123	tristate "Winbond W89c840 Ethernet support"
124	depends on PCI
125	select CRC32
126	select MII
127	help
128	  This driver is for the Winbond W89c840 chip.  It also works with
129	  the TX9882 chip on the Compex RL100-ATX board.
130	  More specific information and updates are available from
131	  <http://www.scyld.com/network/drivers.html>.
132
133config DM9102
134	tristate "Davicom DM910x/DM980x support"
135	depends on PCI
136	select CRC32
137	help
138	  This driver is for DM9102(A)/DM9132/DM9801 compatible PCI cards from
139	  Davicom (<http://www.davicom.com.tw/>).  If you have such a network
140	  (Ethernet) card, say Y.  Some information is contained in the file
141	  <file:Documentation/networking/device_drivers/dec/dmfe.rst>.
142
143	  To compile this driver as a module, choose M here. The module will
144	  be called dmfe.
145
146config ULI526X
147	tristate "ULi M526x controller support"
148	depends on PCI
149	select CRC32
150	help
151	  This driver is for ULi M5261/M5263 10/100M Ethernet Controller
152	  (<http://www.nvidia.com/page/uli_drivers.html>).
153
154	  To compile this driver as a module, choose M here. The module will
155	  be called uli526x.
156
157config PCMCIA_XIRCOM
158	tristate "Xircom CardBus support"
159	depends on CARDBUS
160	help
161	  This driver is for the Digital "Tulip" Ethernet CardBus adapters.
162	  It should work with most DEC 21*4*-based chips/ethercards, as well
163	  as with work-alike chips from Lite-On (PNIC) and Macronix (MXIC) and
164	  ASIX.
165
166	  To compile this driver as a module, choose M here. The module will
167	  be called xircom_cb.  If unsure, say N.
168
169endif # NET_TULIP
170