18c2ecf20Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0-only
28c2ecf20Sopenharmony_ci#
38c2ecf20Sopenharmony_ci# Tulip family network device configuration
48c2ecf20Sopenharmony_ci#
58c2ecf20Sopenharmony_ci
68c2ecf20Sopenharmony_ciconfig NET_TULIP
78c2ecf20Sopenharmony_ci	bool "DEC - Tulip devices"
88c2ecf20Sopenharmony_ci	depends on (PCI || EISA || CARDBUS)
98c2ecf20Sopenharmony_ci	help
108c2ecf20Sopenharmony_ci	  This selects the "Tulip" family of EISA/PCI network cards.
118c2ecf20Sopenharmony_ci
128c2ecf20Sopenharmony_ciif NET_TULIP
138c2ecf20Sopenharmony_ci
148c2ecf20Sopenharmony_ciconfig DE2104X
158c2ecf20Sopenharmony_ci	tristate "Early DECchip Tulip (dc2104x) PCI support"
168c2ecf20Sopenharmony_ci	depends on PCI
178c2ecf20Sopenharmony_ci	select CRC32
188c2ecf20Sopenharmony_ci	help
198c2ecf20Sopenharmony_ci	  This driver is developed for the SMC EtherPower series Ethernet
208c2ecf20Sopenharmony_ci	  cards and also works with cards based on the DECchip
218c2ecf20Sopenharmony_ci	  21040 (Tulip series) chips.  Some LinkSys PCI cards are
228c2ecf20Sopenharmony_ci	  of this type.  (If your card is NOT SMC EtherPower 10/100 PCI
238c2ecf20Sopenharmony_ci	  (smc9332dst), you can also try the driver for "Generic DECchip"
248c2ecf20Sopenharmony_ci	  cards, below.  However, most people with a network card of this type
258c2ecf20Sopenharmony_ci	  will say Y here.)
268c2ecf20Sopenharmony_ci
278c2ecf20Sopenharmony_ci	  To compile this driver as a module, choose M here. The module will
288c2ecf20Sopenharmony_ci	  be called de2104x.
298c2ecf20Sopenharmony_ci
308c2ecf20Sopenharmony_ciconfig DE2104X_DSL
318c2ecf20Sopenharmony_ci	int "Descriptor Skip Length in 32 bit longwords"
328c2ecf20Sopenharmony_ci	depends on DE2104X
338c2ecf20Sopenharmony_ci	range 0 31
348c2ecf20Sopenharmony_ci	default 0
358c2ecf20Sopenharmony_ci	help
368c2ecf20Sopenharmony_ci	  Setting this value allows to align ring buffer descriptors into their
378c2ecf20Sopenharmony_ci	  own cache lines. Value of 4 corresponds to the typical 32 byte line
388c2ecf20Sopenharmony_ci	  (the descriptor is 16 bytes). This is necessary on systems that lack
398c2ecf20Sopenharmony_ci	  cache coherence, an example is PowerMac 5500. Otherwise 0 is safe.
408c2ecf20Sopenharmony_ci	  Default is 0, and range is 0 to 31.
418c2ecf20Sopenharmony_ci
428c2ecf20Sopenharmony_ciconfig TULIP
438c2ecf20Sopenharmony_ci	tristate "DECchip Tulip (dc2114x) PCI support"
448c2ecf20Sopenharmony_ci	depends on PCI
458c2ecf20Sopenharmony_ci	select CRC32
468c2ecf20Sopenharmony_ci	help
478c2ecf20Sopenharmony_ci	  This driver is developed for the SMC EtherPower series Ethernet
488c2ecf20Sopenharmony_ci	  cards and also works with cards based on the DECchip 
498c2ecf20Sopenharmony_ci	  21140 (Tulip series) chips.  Some LinkSys PCI cards are
508c2ecf20Sopenharmony_ci	  of this type.  (If your card is NOT SMC EtherPower 10/100 PCI
518c2ecf20Sopenharmony_ci	  (smc9332dst), you can also try the driver for "Generic DECchip"
528c2ecf20Sopenharmony_ci	  cards, above.  However, most people with a network card of this type
538c2ecf20Sopenharmony_ci	  will say Y here.)
548c2ecf20Sopenharmony_ci
558c2ecf20Sopenharmony_ci	  To compile this driver as a module, choose M here. The module will
568c2ecf20Sopenharmony_ci	  be called tulip.
578c2ecf20Sopenharmony_ci
588c2ecf20Sopenharmony_ciconfig TULIP_MWI
598c2ecf20Sopenharmony_ci	bool "New bus configuration"
608c2ecf20Sopenharmony_ci	depends on TULIP
618c2ecf20Sopenharmony_ci	help
628c2ecf20Sopenharmony_ci	  This configures your Tulip card specifically for the card and
638c2ecf20Sopenharmony_ci	  system cache line size type you are using.
648c2ecf20Sopenharmony_ci
658c2ecf20Sopenharmony_ci	  This is experimental code, not yet tested on many boards.
668c2ecf20Sopenharmony_ci
678c2ecf20Sopenharmony_ci	  If unsure, say N.
688c2ecf20Sopenharmony_ci
698c2ecf20Sopenharmony_ciconfig TULIP_MMIO
708c2ecf20Sopenharmony_ci	bool "Use PCI shared mem for NIC registers"
718c2ecf20Sopenharmony_ci	depends on TULIP
728c2ecf20Sopenharmony_ci	help
738c2ecf20Sopenharmony_ci	  Use PCI shared memory for the NIC registers, rather than going through
748c2ecf20Sopenharmony_ci	  the Tulip's PIO (programmed I/O ports).  Faster, but could produce
758c2ecf20Sopenharmony_ci	  obscure bugs if your mainboard has memory controller timing issues.
768c2ecf20Sopenharmony_ci	  If in doubt, say N.
778c2ecf20Sopenharmony_ci
788c2ecf20Sopenharmony_ciconfig TULIP_NAPI
798c2ecf20Sopenharmony_ci	bool "Use RX polling (NAPI)"
808c2ecf20Sopenharmony_ci	depends on TULIP
818c2ecf20Sopenharmony_ci	help
828c2ecf20Sopenharmony_ci	  NAPI is a new driver API designed to reduce CPU and interrupt load
838c2ecf20Sopenharmony_ci	  when the driver is receiving lots of packets from the card. It is
848c2ecf20Sopenharmony_ci	  still somewhat experimental and thus not yet enabled by default.
858c2ecf20Sopenharmony_ci
868c2ecf20Sopenharmony_ci	  If your estimated Rx load is 10kpps or more, or if the card will be
878c2ecf20Sopenharmony_ci	  deployed on potentially unfriendly networks (e.g. in a firewall),
888c2ecf20Sopenharmony_ci	  then say Y here.
898c2ecf20Sopenharmony_ci
908c2ecf20Sopenharmony_ci	  If in doubt, say N.
918c2ecf20Sopenharmony_ci
928c2ecf20Sopenharmony_ciconfig TULIP_NAPI_HW_MITIGATION
938c2ecf20Sopenharmony_ci	bool "Use Interrupt Mitigation"
948c2ecf20Sopenharmony_ci	depends on TULIP_NAPI
958c2ecf20Sopenharmony_ci	help
968c2ecf20Sopenharmony_ci	  Use HW to reduce RX interrupts. Not strictly necessary since NAPI
978c2ecf20Sopenharmony_ci	  reduces RX interrupts by itself. Interrupt mitigation reduces RX
988c2ecf20Sopenharmony_ci	  interrupts even at low levels of traffic at the cost of a small
998c2ecf20Sopenharmony_ci	  latency.
1008c2ecf20Sopenharmony_ci
1018c2ecf20Sopenharmony_ci	  If in doubt, say Y.
1028c2ecf20Sopenharmony_ci
1038c2ecf20Sopenharmony_ciconfig TULIP_DM910X
1048c2ecf20Sopenharmony_ci	def_bool y
1058c2ecf20Sopenharmony_ci	depends on TULIP && SPARC
1068c2ecf20Sopenharmony_ci
1078c2ecf20Sopenharmony_ciconfig DE4X5
1088c2ecf20Sopenharmony_ci	tristate "Generic DECchip & DIGITAL EtherWORKS PCI/EISA"
1098c2ecf20Sopenharmony_ci	depends on (PCI || EISA)
1108c2ecf20Sopenharmony_ci	depends on VIRT_TO_BUS || ALPHA || PPC || SPARC
1118c2ecf20Sopenharmony_ci	select CRC32
1128c2ecf20Sopenharmony_ci	help
1138c2ecf20Sopenharmony_ci	  This is support for the DIGITAL series of PCI/EISA Ethernet cards.
1148c2ecf20Sopenharmony_ci	  These include the DE425, DE434, DE435, DE450 and DE500 models.  If
1158c2ecf20Sopenharmony_ci	  you have a network card of this type, say Y.  More specific
1168c2ecf20Sopenharmony_ci	  information is contained in
1178c2ecf20Sopenharmony_ci	  <file:Documentation/networking/device_drivers/ethernet/dec/de4x5.rst>.
1188c2ecf20Sopenharmony_ci
1198c2ecf20Sopenharmony_ci	  To compile this driver as a module, choose M here. The module will
1208c2ecf20Sopenharmony_ci	  be called de4x5.
1218c2ecf20Sopenharmony_ci
1228c2ecf20Sopenharmony_ciconfig WINBOND_840
1238c2ecf20Sopenharmony_ci	tristate "Winbond W89c840 Ethernet support"
1248c2ecf20Sopenharmony_ci	depends on PCI
1258c2ecf20Sopenharmony_ci	select CRC32
1268c2ecf20Sopenharmony_ci	select MII
1278c2ecf20Sopenharmony_ci	help
1288c2ecf20Sopenharmony_ci	  This driver is for the Winbond W89c840 chip.  It also works with 
1298c2ecf20Sopenharmony_ci	  the TX9882 chip on the Compex RL100-ATX board.
1308c2ecf20Sopenharmony_ci	  More specific information and updates are available from
1318c2ecf20Sopenharmony_ci	  <http://www.scyld.com/network/drivers.html>.
1328c2ecf20Sopenharmony_ci
1338c2ecf20Sopenharmony_ciconfig DM9102
1348c2ecf20Sopenharmony_ci	tristate "Davicom DM910x/DM980x support"
1358c2ecf20Sopenharmony_ci	depends on PCI
1368c2ecf20Sopenharmony_ci	select CRC32
1378c2ecf20Sopenharmony_ci	help
1388c2ecf20Sopenharmony_ci	  This driver is for DM9102(A)/DM9132/DM9801 compatible PCI cards from
1398c2ecf20Sopenharmony_ci	  Davicom (<http://www.davicom.com.tw/>).  If you have such a network
1408c2ecf20Sopenharmony_ci	  (Ethernet) card, say Y.  Some information is contained in the file
1418c2ecf20Sopenharmony_ci	  <file:Documentation/networking/device_drivers/ethernet/dec/dmfe.rst>.
1428c2ecf20Sopenharmony_ci
1438c2ecf20Sopenharmony_ci	  To compile this driver as a module, choose M here. The module will
1448c2ecf20Sopenharmony_ci	  be called dmfe.
1458c2ecf20Sopenharmony_ci
1468c2ecf20Sopenharmony_ciconfig ULI526X
1478c2ecf20Sopenharmony_ci	tristate "ULi M526x controller support"
1488c2ecf20Sopenharmony_ci	depends on PCI
1498c2ecf20Sopenharmony_ci	select CRC32
1508c2ecf20Sopenharmony_ci	help
1518c2ecf20Sopenharmony_ci	  This driver is for ULi M5261/M5263 10/100M Ethernet Controller
1528c2ecf20Sopenharmony_ci	  (<http://www.nvidia.com/page/uli_drivers.html>).
1538c2ecf20Sopenharmony_ci
1548c2ecf20Sopenharmony_ci	  To compile this driver as a module, choose M here. The module will
1558c2ecf20Sopenharmony_ci	  be called uli526x.
1568c2ecf20Sopenharmony_ci	  
1578c2ecf20Sopenharmony_ciconfig PCMCIA_XIRCOM
1588c2ecf20Sopenharmony_ci	tristate "Xircom CardBus support"
1598c2ecf20Sopenharmony_ci	depends on CARDBUS
1608c2ecf20Sopenharmony_ci	help
1618c2ecf20Sopenharmony_ci	  This driver is for the Digital "Tulip" Ethernet CardBus adapters.
1628c2ecf20Sopenharmony_ci	  It should work with most DEC 21*4*-based chips/ethercards, as well
1638c2ecf20Sopenharmony_ci	  as with work-alike chips from Lite-On (PNIC) and Macronix (MXIC) and
1648c2ecf20Sopenharmony_ci	  ASIX.
1658c2ecf20Sopenharmony_ci
1668c2ecf20Sopenharmony_ci	  To compile this driver as a module, choose M here. The module will
1678c2ecf20Sopenharmony_ci	  be called xircom_cb.  If unsure, say N.
1688c2ecf20Sopenharmony_ci
1698c2ecf20Sopenharmony_ciendif # NET_TULIP
170