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