diff options
| author | Scott Feldman <scott.feldman@intel.com> | 2002-05-29 17:46:59 -0400 |
|---|---|---|
| committer | Jeff Garzik <jgarzik@mandrakesoft.com> | 2002-05-29 17:46:59 -0400 |
| commit | a82fa3a4289fb5be188e910b3fefcc7070f8bad9 (patch) | |
| tree | bcf386826ef64ed096b8005e192f53dbbca54735 /Documentation | |
| parent | 3e60a0a84cd5020f534ba660f85b95216f45435c (diff) | |
e100 net driver update:
* Added Documentation/networking/e100.txt.
* Added drivers/net/Config.help text for CONFIG_E100.
* Added ethtool ETHTOOL_PHYS_ID support
* Made ethtool WoL advertisement more selective on h/w controller
version.
Diffstat (limited to 'Documentation')
| -rw-r--r-- | Documentation/networking/e100.txt | 272 |
1 files changed, 272 insertions, 0 deletions
diff --git a/Documentation/networking/e100.txt b/Documentation/networking/e100.txt new file mode 100644 index 000000000000..95a6d14c3a49 --- /dev/null +++ b/Documentation/networking/e100.txt @@ -0,0 +1,272 @@ +Linux* Base Driver for the Intel(R) PRO/100 Family of Adapters +============================================================== + +April 9, 2002 + + +Contents +======== + +- In This Release +- Supported Adapters +- Command Line Parameters +- CPU Cycle Saver +- Additional Configurations +- Support + + +In This Release +=============== + +This file describes the Linux* Base Driver for the Intel(R) PRO/100 Family of +Adapters, version 2.0.x. This driver includes support for Itanium(TM)-based +systems. + +New for this release: + + - Additional ethtool functionality, including link status test and EEPROM + read/write. A third-party application can use the ethtool interface to + get and set driver parameters. + + - Support for Zero copy on 82550-based adapters. This feature provides + faster data throughput and significant CPU usage improvement in systems + that use the relevant system call (sendfile(2)). + + - Support for large MTU-enabling interface (1504 bytes) with kernel's + VLAN module + + - Support for polling on RX + + - Support for Wake On LAN* on 82550 and 82559-based adapters + + +Supported Adapters +================== + +The following Intel network adapters are compatible with the drivers +in this release: + +Controller Adapter Name Board IDs +---------- ------------ --------- + +82558 PRO/100+ PCI Adapter 668081-xxx, 689661-xxx + +82558 PRO/100+ Management Adapter 691334-xxx, 701738-xxx, + 721383-xxx + +82558 PRO/100+ Dual Port Server Adapter 714303-xxx, 711269-xxx, + A28276-xxx + +82558 PRO/100+ PCI Server Adapter 710550-xxx + +82550 PRO/100 S Server Adapter 752438-xxx (82550) +82559 A56831-xxx, A10563-xxx, + A12171-xxx, A12321-xxx, + A12320-xxx, A12170-xxx + 748568-xxx (82559) + 748565-xxx (82559) + + +82550 PRO/100 S Desktop Adapter 751767-xxx (82550) +82559 748592-xxx, A12167-xxx, + A12318-xxx, A12317-xxx, + A12165-xxx + 748569-xxx (82559) + + + +82559 PRO/100+ Server Adapter 729757-xxx + +82559 PRO/100 S Management Adapter 748566-xxx, 748564-xxx + +82550 PRO/100 S Dual Port Server Adapter A56831-xxx + +82551 PRO/100 M Desktop Adapter A80897-xxx + + PRO/100 S Advanced Management Adapter 747842-xxx, 745171-xxx + +CNR PRO/100 VE Desktop Adapter A10386-xxx, A10725-xxx, + A23801-xxx, A19716-xxx + + + PRO/100 VM Desktop Adapter A14323-xxx, A19725-xxx, + A23801-xxx, A22220-xxx, + A23796-xxx + + +To verify that your adapter is supported, find the board ID number on the +adapter. Look for a label that has a barcode and a number in the format +123456-001 (six digits hyphen three digits). Match this to the list of +numbers above. + +For more information on how to identify your adapter, go to the Adapter & +Driver ID Guide at: + + http://support.intel.com/support/network/adapter/pro100/21397.htm + +For the latest Intel PRO/100 network driver for Linux, see: + + http://appsr.intel.com/scripts-df/support_intel.asp + + +Command Line Parameters +======================= + +The following parameters are used by entering them on the command line with +the modprobe or insmod command. For example, with two Intel PRO/100 PCI +adapters, entering: + + modprobe e100 TxDescriptors=32,128 + +loads the e100 driver with 32 TX resources for the first adapter and 128 TX +resources for the second adapter. This configuration favors the second +adapter. The driver supports up to 16 network adapters concurrently. + +NOTE: Giving any command line option the value "-1" causes the driver to use + the appropriate default value for that option, as if no value was + specified. + + +BundleMax +Valid Range: 0x1-0xFFFF +Default Value: 6 + This parameter holds the maximum number of packets in a bundle. Suggested + values range from 2 to 10. See "CPU Cycle Saver." + +BundleSmallFr +Valid Range: 0-1 (0=off, 1=on) +Default Value: 0 + The value 1 (on) causes small packets (less than 128 bytes) to be bundled. + See "CPU Cycle Saver." + +e100_speed_duplex +Valid Range: 0-4 (1=10half;2=10full;3=100half;4=100full) +Default Value: 0 + The default value of 0 is set to auto-negotiate if the link partner is set + to auto-negotiate. If the link partner is forced, e100_speed_duplex + defaults to half-duplex. + Example usage: insmod e100.o e100_speed_duplex=4,4 (for two adapters) + +flow_control +Valid Range: 0-1 (0=off, 1=on) +Default Value: 0 + This parameter controls the automatic generation(Tx) and response(Rx) to + Ethernet PAUSE frames. flow_control should NOT be set to 1 when the e100 + adapter is connected to an interface that does not support Ethernet PAUSE + frames and when the e100_speed_duplex parameter is NOT set to zero. + +IntDelay +Valid Range: 0-0xFFFF (0=off) +Default Value: 1536 + This parameter holds the number of time units (in adapter terminology) + until the adapter generates an interrupt. The recommended value for + IntDelay is 0x600 (upon initialization). Suggested values range from + 0x200h to 0x800. See "CPU Cycle Saver." + +IFS +Valid Range: 0-1 (0=off, 1=on) +Default Value: 1 + Inter Frame Spacing (IFS) aims to reduce the number of Ethernet frame + collisions by altering the time between frame transmissions. When IFS is + enabled the driver tries to find an optimal IFS value. However, some + switches function better when IFS is disabled. + +PollingMaxWork +Valid Range: 1-1024 (max number of RxDescriptors) +Default Value: Specified number of RxDescriptors + This value specifies the maximum number of receive packets that are + processed on a single polling call. This parameter is invalid if + RxCongestionControl is set to 0. + +RxCongestionControl +Valid Range: 0-1 (0=off, 1=on) +Default Value: 1 + 1 enables polling mode. When the link is congested, the driver can decide + to handle received packets by polling them, instead of waiting until + interrupts occur. + +RxDescriptors +Valid Range: 8-1024 +Default Value: 64 + This parameter defines the number of receive descriptors allocated by + the driver. Increasing this value allows the driver to buffer more + incoming packets before the driver is required to service an interrupt. + The maximum value for Itanium-based systems is 64. + +TxDescriptors +Valid Range: 19-1024 +Default Value: 64 + This value is the number of transmit descriptors allocated by the driver. + Increasing this value allows the protocol stack to queue more transmits at + the driver level. The maximum value for Itanium-based systems is 64. + +ucode (not available for 82557-based adapters) +Valid Range: 0-1 (0=off, 1=on) +Default Value: 0 for 82558-based adapters + 1 for 82559(and higher)-based adapters + On uploads the micro code to the adapter, which enables CPU Cycle Saver. + See the section "CPU Cycle Saver" below. + Example usage: insmod e100.o ucode=0 (does not reduce CPU usage) + +XsumRX +Valid Range: 0-1 (0=off, 1=on) +Default Value: 1 + On allows Rx checksum offloading for TCP/UDP packets. Requires that the + hardware support this feature. + + +CPU Cycle Saver +================ + +CPU Cycle Saver reduces CPU utilization by reducing the number of interrupts +that the adapter generates. + +When CPU Cycle Saver is turned off, the adapter generates one interrupt for +every frame that is received. This means that the operating system stops what +it is doing and switches to the network driver in order to process the +receive. + +When CPU Cycle Saver is on, the adapter does not generate an interrupt for +every frame it receives. Instead, it waits until it receives several frames +before generating an interrupt. This reduces the amount of time spent +switching to and from the driver. + +CPU Cycle Saver consists of these arguments: IntDelay, BundleMax and +BundleSmallFr. When IntDelay is increased, the adapter waits longer for +frames to arrive before generating the interrupt. By increasing BundleMax, +the network adapter waits for the number of frames specified to arrive before +generating the interrupt. When BundleSmallFr is disabled, the adapter does +not bundle packets that are smaller than 128 bytes. Such small packets are +often, but not always, control packets that are better served immediately. + +For most users, it is recommended that CPU Cycle Saver be used with the +default values specified in the Command Line Parameters section. However, in +some cases, performance problems may occur with CPU Cycle Saver. If such +problems are observed, we recommend turning off this feature by setting +ucode=0. + + +Support +======= + +For general information and support, go to the Intel support website at: + + http://support.intel.com + +If an issue is identified with the released source code on the supported +kernel with a supported adapter, email the specific information related to +the issue to linux.nics@intel.com. + + +License +======= + +This software program is released under the terms of a license agreement +between you ('Licensee') and Intel. Do not use or load this software or any +associated materials (collectively, the 'Software') until you have carefully +read the full terms and conditions of the LICENSE located in this software +package. By loading or using the Software, you agree to the terms of this +Agreement. If you do not agree with the terms of this Agreement, do not +install or use the Software. + +* Other names and brands may be claimed as the property of others. |
