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