Commit 8bee0cd9 authored by Scott Feldman's avatar Scott Feldman Committed by Jeff Garzik

e100 4/4:

* updates to Documentation/networking/e100.txt
parent 2896ddff
Linux* Base Driver for the Intel(R) PRO/100 Family of Adapters Linux* Base Driver for the Intel(R) PRO/100 Family of Adapters
============================================================== ==============================================================
April 9, 2002 September 16, 2002
Contents Contents
...@@ -19,26 +19,9 @@ In This Release ...@@ -19,26 +19,9 @@ In This Release
=============== ===============
This file describes the Linux* Base Driver for the Intel(R) PRO/100 Family of 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 Adapters, version 2.1.x. This driver includes support for Itanium(TM)-based
systems. 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 Supported Adapters
================== ==================
...@@ -96,8 +79,7 @@ CNR PRO/100 VE Desktop Adapter A10386-xxx, A10725-xxx, ...@@ -96,8 +79,7 @@ CNR PRO/100 VE Desktop Adapter A10386-xxx, A10725-xxx,
To verify that your adapter is supported, find the board ID number on the 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 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 A12345-001. Match this to the list of numbers above.
numbers above.
For more information on how to identify your adapter, go to the Adapter & For more information on how to identify your adapter, go to the Adapter &
Driver ID Guide at: Driver ID Guide at:
...@@ -106,15 +88,20 @@ Driver ID Guide at: ...@@ -106,15 +88,20 @@ Driver ID Guide at:
For the latest Intel PRO/100 network driver for Linux, see: For the latest Intel PRO/100 network driver for Linux, see:
http://appsr.intel.com/scripts-df/support_intel.asp http://downloadfinder.intel.com/scripts-df/support_intel.asp
Command Line Parameters Command Line Parameters
======================= =======================
The following parameters are used by entering them on the command line with The following optional parameters are used by entering them on the command
the modprobe or insmod command. For example, with two Intel PRO/100 PCI line with the modprobe or insmod command using this syntax:
adapters, entering:
modprobe e100 [<option>=<VAL1>,<VAL2>,...]
insmod e100 [<option>=<VAL1>,<VAL2>,...]
For example, with two Intel PRO/100 PCI adapters, entering:
modprobe e100 TxDescriptors=32,128 modprobe e100 TxDescriptors=32,128
...@@ -122,16 +109,20 @@ loads the e100 driver with 32 TX resources for the first adapter and 128 TX ...@@ -122,16 +109,20 @@ 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 resources for the second adapter. This configuration favors the second
adapter. The driver supports up to 16 network adapters concurrently. adapter. The driver supports up to 16 network adapters concurrently.
The default value for each parameter is generally the recommended setting,
unless otherwise noted.
NOTE: Giving any command line option the value "-1" causes the driver to use 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 the appropriate default value for that option, as if no value was
specified. specified.
BundleMax BundleMax
Valid Range: 0x1-0xFFFF Valid Range: 1-65535
Default Value: 6 Default Value: 6
This parameter holds the maximum number of packets in a bundle. Suggested This parameter holds the maximum number of small packets (less than 128
values range from 2 to 10. See "CPU Cycle Saver." bytes) in a bundle. Suggested values range from 2 to 10. See "CPU Cycle
Saver."
BundleSmallFr BundleSmallFr
Valid Range: 0-1 (0=off, 1=on) Valid Range: 0-1 (0=off, 1=on)
...@@ -142,48 +133,33 @@ Default Value: 0 ...@@ -142,48 +133,33 @@ Default Value: 0
e100_speed_duplex e100_speed_duplex
Valid Range: 0-4 (1=10half;2=10full;3=100half;4=100full) Valid Range: 0-4 (1=10half;2=10full;3=100half;4=100full)
Default Value: 0 Default Value: 0
The default value of 0 is set to auto-negotiate if the link partner is set The default value of 0 sets the adapter to auto-negotiate. Other values
to auto-negotiate. If the link partner is forced, e100_speed_duplex set the adapter to forced speed and duplex.
defaults to half-duplex.
Example usage: insmod e100.o e100_speed_duplex=4,4 (for two adapters) Example usage: insmod e100.o e100_speed_duplex=4,4 (for two adapters)
flow_control flow_control
Valid Range: 0-1 (0=off, 1=on) Valid Range: 0-1 (0=off, 1=on)
Default Value: 0 Default Value: 0
This parameter controls the automatic generation(Tx) and response(Rx) to 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 Ethernet PAUSE frames. flow_control should NOT be set to 1 when the
adapter is connected to an interface that does not support Ethernet PAUSE 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. frames and when the e100_speed_duplex parameter is NOT set to zero.
IntDelay IntDelay
Valid Range: 0-0xFFFF (0=off) Valid Range: 0-65535 (0=off)
Default Value: 1536 Default Value: 1536
This parameter holds the number of time units (in adapter terminology) This parameter holds the number of time units (in adapter terminology)
until the adapter generates an interrupt. The recommended value for until the adapter generates an interrupt. The recommended value for
IntDelay is 0x600 (upon initialization). Suggested values range from IntDelay is 1536 (upon initialization). Suggested values range from
0x200h to 0x800. See "CPU Cycle Saver." 512 to 2048. See "CPU Cycle Saver."
IFS IFS
Valid Range: 0-1 (0=off, 1=on) Valid Range: 0-1 (0=off, 1=on)
Default Value: 1 Default Value: 1
Inter Frame Spacing (IFS) aims to reduce the number of Ethernet frame Inter Frame Spacing (IFS) aims to reduce the number of Ethernet frame
collisions by altering the time between frame transmissions. When IFS is collisions by altering the time between frame transmissions. When IFS is
enabled the driver tries to find an optimal IFS value. However, some enabled the driver tries to find an optimal IFS value. It is used only at
switches function better when IFS is disabled. half duplex.
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 RxDescriptors
Valid Range: 8-1024 Valid Range: 8-1024
...@@ -200,13 +176,15 @@ Default Value: 64 ...@@ -200,13 +176,15 @@ Default Value: 64
Increasing this value allows the protocol stack to queue more transmits at Increasing this value allows the protocol stack to queue more transmits at
the driver level. The maximum value for Itanium-based systems is 64. the driver level. The maximum value for Itanium-based systems is 64.
ucode (not available for 82557-based adapters) ucode
Valid Range: 0-1 (0=off, 1=on) Valid Range: 0-1 (0=off, 1=on)
Default Value: 0 for 82558-based adapters Default Value: 0 for 82558-based adapters
1 for 82559(and higher)-based adapters 1 for 82559, 82550, and 82551-based adapters
On uploads the micro code to the adapter, which enables CPU Cycle Saver. On uploads the micro code to the adapter, which enables CPU Cycle Saver.
See the section "CPU Cycle Saver" below. See the section "CPU Cycle Saver" below.
Example usage: insmod e100.o ucode=0 (does not reduce CPU usage) Example usage: insmod e100.o ucode=1
Not available on 82557-based adapters.
XsumRX XsumRX
Valid Range: 0-1 (0=off, 1=on) Valid Range: 0-1 (0=off, 1=on)
...@@ -214,6 +192,8 @@ Default Value: 1 ...@@ -214,6 +192,8 @@ Default Value: 1
On allows Rx checksum offloading for TCP/UDP packets. Requires that the On allows Rx checksum offloading for TCP/UDP packets. Requires that the
hardware support this feature. hardware support this feature.
Not available on 82557 and 82558-based adapters.
CPU Cycle Saver CPU Cycle Saver
================ ================
...@@ -234,10 +214,11 @@ switching to and from the driver. ...@@ -234,10 +214,11 @@ switching to and from the driver.
CPU Cycle Saver consists of these arguments: IntDelay, BundleMax and CPU Cycle Saver consists of these arguments: IntDelay, BundleMax and
BundleSmallFr. When IntDelay is increased, the adapter waits longer for BundleSmallFr. When IntDelay is increased, the adapter waits longer for
frames to arrive before generating the interrupt. By increasing BundleMax, frames to arrive before generating the interrupt. By increasing BundleMax,
the network adapter waits for the number of frames specified to arrive before the network adapter waits for the number of small frames (less than 128 bytes)
generating the interrupt. When BundleSmallFr is disabled, the adapter does specified to arrive before generating the interrupt. When BundleSmallFr is
not bundle packets that are smaller than 128 bytes. Such small packets are disabled, the adapter does not bundle small packets. Such small packets are
often, but not always, control packets that are better served immediately. often, but not always, control packets that are better served immediately;
therefore, BundleSmallFr is disabled by default.
For most users, it is recommended that CPU Cycle Saver be used with the 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 default values specified in the Command Line Parameters section. However, in
...@@ -249,7 +230,7 @@ ucode=0. ...@@ -249,7 +230,7 @@ ucode=0.
Support Support
======= =======
For general information and support, go to the Intel support website at: For general information, go to the Intel support website at:
http://support.intel.com http://support.intel.com
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment