summaryrefslogtreecommitdiff
path: root/Documentation
diff options
context:
space:
mode:
authorScott Feldman <scott.feldman@intel.com>2002-05-29 17:46:59 -0400
committerJeff Garzik <jgarzik@mandrakesoft.com>2002-05-29 17:46:59 -0400
commita82fa3a4289fb5be188e910b3fefcc7070f8bad9 (patch)
treebcf386826ef64ed096b8005e192f53dbbca54735 /Documentation
parent3e60a0a84cd5020f534ba660f85b95216f45435c (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.txt272
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.