11da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds# 21da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds# Tulip family network device configuration 31da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds# 41da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds 5a88394cfb58007cca945699545469017beb0d206Jeff Kirsherconfig NET_TULIP 6a88394cfb58007cca945699545469017beb0d206Jeff Kirsher bool "DEC - Tulip devices" 7a88394cfb58007cca945699545469017beb0d206Jeff Kirsher depends on (PCI || EISA || CARDBUS) 8a88394cfb58007cca945699545469017beb0d206Jeff Kirsher ---help--- 91da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds This selects the "Tulip" family of EISA/PCI network cards. 101da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds 11d1c0a65fb597697d1fbce4eadf42b84f70483edcJan Engelhardtif NET_TULIP 12d1c0a65fb597697d1fbce4eadf42b84f70483edcJan Engelhardt 131da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvaldsconfig DE2104X 149812cb12c9d58c5d9aead84eb2e7864c68c80302Ondrej Zary tristate "Early DECchip Tulip (dc2104x) PCI support" 159812cb12c9d58c5d9aead84eb2e7864c68c80302Ondrej Zary depends on PCI 161da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds select CRC32 171da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds ---help--- 181da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds This driver is developed for the SMC EtherPower series Ethernet 191da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds cards and also works with cards based on the DECchip 201da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds 21040 (Tulip series) chips. Some LinkSys PCI cards are 211da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds of this type. (If your card is NOT SMC EtherPower 10/100 PCI 221da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds (smc9332dst), you can also try the driver for "Generic DECchip" 231da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds cards, below. However, most people with a network card of this type 241da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds will say Y here.) Do read the Ethernet-HOWTO, available from 251da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds <http://www.tldp.org/docs.html#howto>. 261da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds 2757ce45dd16cd427ac2bdef202daf513bd25d650bAdrian Bunk To compile this driver as a module, choose M here. The module will 281da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds be called de2104x. 291da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds 30b77e5228849fdcd7a5d73beb16b9ad99395236ecRisto Suominenconfig DE2104X_DSL 31b77e5228849fdcd7a5d73beb16b9ad99395236ecRisto Suominen int "Descriptor Skip Length in 32 bit longwords" 32b77e5228849fdcd7a5d73beb16b9ad99395236ecRisto Suominen depends on DE2104X 33b77e5228849fdcd7a5d73beb16b9ad99395236ecRisto Suominen range 0 31 34b77e5228849fdcd7a5d73beb16b9ad99395236ecRisto Suominen default 0 35a88394cfb58007cca945699545469017beb0d206Jeff Kirsher ---help--- 36b77e5228849fdcd7a5d73beb16b9ad99395236ecRisto Suominen Setting this value allows to align ring buffer descriptors into their 37b77e5228849fdcd7a5d73beb16b9ad99395236ecRisto Suominen own cache lines. Value of 4 corresponds to the typical 32 byte line 38b77e5228849fdcd7a5d73beb16b9ad99395236ecRisto Suominen (the descriptor is 16 bytes). This is necessary on systems that lack 39b77e5228849fdcd7a5d73beb16b9ad99395236ecRisto Suominen cache coherence, an example is PowerMac 5500. Otherwise 0 is safe. 40b77e5228849fdcd7a5d73beb16b9ad99395236ecRisto Suominen Default is 0, and range is 0 to 31. 41b77e5228849fdcd7a5d73beb16b9ad99395236ecRisto Suominen 421da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvaldsconfig TULIP 431da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds tristate "DECchip Tulip (dc2114x) PCI support" 44d1c0a65fb597697d1fbce4eadf42b84f70483edcJan Engelhardt depends on PCI 451da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds select CRC32 461da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds ---help--- 471da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds This driver is developed for the SMC EtherPower series Ethernet 481da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds cards and also works with cards based on the DECchip 491da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds 21140 (Tulip series) chips. Some LinkSys PCI cards are 501da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds of this type. (If your card is NOT SMC EtherPower 10/100 PCI 511da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds (smc9332dst), you can also try the driver for "Generic DECchip" 521da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds cards, above. However, most people with a network card of this type 531da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds will say Y here.) Do read the Ethernet-HOWTO, available from 541da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds <http://www.tldp.org/docs.html#howto>. 551da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds 5657ce45dd16cd427ac2bdef202daf513bd25d650bAdrian Bunk To compile this driver as a module, choose M here. The module will 571da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds be called tulip. 581da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds 591da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvaldsconfig TULIP_MWI 60cb40390b86029051900e57307815e243cce126c6Kees Cook bool "New bus configuration" 61cb40390b86029051900e57307815e243cce126c6Kees Cook depends on TULIP 62a88394cfb58007cca945699545469017beb0d206Jeff Kirsher ---help--- 631da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds This configures your Tulip card specifically for the card and 641da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds system cache line size type you are using. 651da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds 661da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds This is experimental code, not yet tested on many boards. 671da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds 681da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds If unsure, say N. 691da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds 701da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvaldsconfig TULIP_MMIO 711da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds bool "Use PCI shared mem for NIC registers" 721da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds depends on TULIP 73a88394cfb58007cca945699545469017beb0d206Jeff Kirsher ---help--- 741da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds Use PCI shared memory for the NIC registers, rather than going through 751da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds the Tulip's PIO (programmed I/O ports). Faster, but could produce 761da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds obscure bugs if your mainboard has memory controller timing issues. 771da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds If in doubt, say N. 781da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds 791da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvaldsconfig TULIP_NAPI 80bf45abeb1d917e92775b4523ba0ddcfd331464b4Randy Dunlap bool "Use RX polling (NAPI)" 811da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds depends on TULIP 82a88394cfb58007cca945699545469017beb0d206Jeff Kirsher ---help--- 831da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds NAPI is a new driver API designed to reduce CPU and interrupt load 841da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds when the driver is receiving lots of packets from the card. It is 851da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds still somewhat experimental and thus not yet enabled by default. 861da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds 871da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds If your estimated Rx load is 10kpps or more, or if the card will be 881da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds deployed on potentially unfriendly networks (e.g. in a firewall), 891da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds then say Y here. 901da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds 911da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds If in doubt, say N. 921da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds 931da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvaldsconfig TULIP_NAPI_HW_MITIGATION 94bf45abeb1d917e92775b4523ba0ddcfd331464b4Randy Dunlap bool "Use Interrupt Mitigation" 951da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds depends on TULIP_NAPI 961da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds ---help--- 97bf45abeb1d917e92775b4523ba0ddcfd331464b4Randy Dunlap Use HW to reduce RX interrupts. Not strictly necessary since NAPI 98bf45abeb1d917e92775b4523ba0ddcfd331464b4Randy Dunlap reduces RX interrupts by itself. Interrupt mitigation reduces RX 99bf45abeb1d917e92775b4523ba0ddcfd331464b4Randy Dunlap interrupts even at low levels of traffic at the cost of a small 100bf45abeb1d917e92775b4523ba0ddcfd331464b4Randy Dunlap latency. 1011da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds 1021da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds If in doubt, say Y. 1031da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds 1044d907069bc1b745f4abd4745c332d33098e733b8Ben Hutchingsconfig TULIP_DM910X 1054d907069bc1b745f4abd4745c332d33098e733b8Ben Hutchings def_bool y 1064d907069bc1b745f4abd4745c332d33098e733b8Ben Hutchings depends on TULIP && SPARC 1074d907069bc1b745f4abd4745c332d33098e733b8Ben Hutchings 1081da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvaldsconfig DE4X5 1091da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds tristate "Generic DECchip & DIGITAL EtherWORKS PCI/EISA" 110a88394cfb58007cca945699545469017beb0d206Jeff Kirsher depends on (PCI || EISA) 111db0b82760ef84562b5c0fa880c22b4f352545554Arnd Bergmann depends on VIRT_TO_BUS || ALPHA || PPC || SPARC 1121da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds select CRC32 1131da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds ---help--- 1141da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds This is support for the DIGITAL series of PCI/EISA Ethernet cards. 1151da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds These include the DE425, DE434, DE435, DE450 and DE500 models. If 1161da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds you have a network card of this type, say Y and read the 1171da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds Ethernet-HOWTO, available from 1181da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds <http://www.tldp.org/docs.html#howto>. More specific 1191da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds information is contained in 1201da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds <file:Documentation/networking/de4x5.txt>. 1211da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds 12257ce45dd16cd427ac2bdef202daf513bd25d650bAdrian Bunk To compile this driver as a module, choose M here. The module will 1231da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds be called de4x5. 1241da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds 1251da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvaldsconfig WINBOND_840 1261da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds tristate "Winbond W89c840 Ethernet support" 127d1c0a65fb597697d1fbce4eadf42b84f70483edcJan Engelhardt depends on PCI 1281da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds select CRC32 1291da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds select MII 130a88394cfb58007cca945699545469017beb0d206Jeff Kirsher ---help--- 1311da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds This driver is for the Winbond W89c840 chip. It also works with 1321da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds the TX9882 chip on the Compex RL100-ATX board. 1331da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds More specific information and updates are available from 1341da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds <http://www.scyld.com/network/drivers.html>. 1351da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds 1361da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvaldsconfig DM9102 1371da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds tristate "Davicom DM910x/DM980x support" 138d1c0a65fb597697d1fbce4eadf42b84f70483edcJan Engelhardt depends on PCI 1391da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds select CRC32 1401da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds ---help--- 1411da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds This driver is for DM9102(A)/DM9132/DM9801 compatible PCI cards from 1421da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds Davicom (<http://www.davicom.com.tw/>). If you have such a network 1431da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds (Ethernet) card, say Y. Some information is contained in the file 1441da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds <file:Documentation/networking/dmfe.txt>. 1451da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds 14657ce45dd16cd427ac2bdef202daf513bd25d650bAdrian Bunk To compile this driver as a module, choose M here. The module will 1471da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds be called dmfe. 1481da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds 1494689ced99b18937e28c0f6c190394ccc3c61d651Peer Chenconfig ULI526X 1504689ced99b18937e28c0f6c190394ccc3c61d651Peer Chen tristate "ULi M526x controller support" 151d1c0a65fb597697d1fbce4eadf42b84f70483edcJan Engelhardt depends on PCI 1524689ced99b18937e28c0f6c190394ccc3c61d651Peer Chen select CRC32 1534689ced99b18937e28c0f6c190394ccc3c61d651Peer Chen ---help--- 1544689ced99b18937e28c0f6c190394ccc3c61d651Peer Chen This driver is for ULi M5261/M5263 10/100M Ethernet Controller 155631dd1a885b6d7e9f6f51b4e5b311c2bb04c323cJustin P. Mattock (<http://www.nvidia.com/page/uli_drivers.html>). 1564689ced99b18937e28c0f6c190394ccc3c61d651Peer Chen 15757ce45dd16cd427ac2bdef202daf513bd25d650bAdrian Bunk To compile this driver as a module, choose M here. The module will 1584689ced99b18937e28c0f6c190394ccc3c61d651Peer Chen be called uli526x. 1594689ced99b18937e28c0f6c190394ccc3c61d651Peer Chen 1601da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvaldsconfig PCMCIA_XIRCOM 161fa6557aff47f25e5b6b92c930a9b60a12acd0b58Adrian Bunk tristate "Xircom CardBus support" 162d1c0a65fb597697d1fbce4eadf42b84f70483edcJan Engelhardt depends on CARDBUS 1631da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds ---help--- 1641da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds This driver is for the Digital "Tulip" Ethernet CardBus adapters. 1651da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds It should work with most DEC 21*4*-based chips/ethercards, as well 1661da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds as with work-alike chips from Lite-On (PNIC) and Macronix (MXIC) and 1671da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds ASIX. 1681da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds 16957ce45dd16cd427ac2bdef202daf513bd25d650bAdrian Bunk To compile this driver as a module, choose M here. The module will 1701da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds be called xircom_cb. If unsure, say N. 1711da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds 172d1c0a65fb597697d1fbce4eadf42b84f70483edcJan Engelhardtendif # NET_TULIP 173