|  | Linux* Base Driver for the Intel(R) PRO/100 Family of Adapters | 
|  | ============================================================== | 
|  |  | 
|  | November 15, 2005 | 
|  |  | 
|  | Contents | 
|  | ======== | 
|  |  | 
|  | - In This Release | 
|  | - Identifying Your Adapter | 
|  | - Building and Installation | 
|  | - Driver Configuration Parameters | 
|  | - Additional Configurations | 
|  | - Known Issues | 
|  | - Support | 
|  |  | 
|  |  | 
|  | In This Release | 
|  | =============== | 
|  |  | 
|  | This file describes the Linux* Base Driver for the Intel(R) PRO/100 Family of | 
|  | Adapters. This driver includes support for Itanium(R)2-based systems. | 
|  |  | 
|  | For questions related to hardware requirements, refer to the documentation | 
|  | supplied with your Intel PRO/100 adapter. | 
|  |  | 
|  | The following features are now available in supported kernels: | 
|  | - Native VLANs | 
|  | - Channel Bonding (teaming) | 
|  | - SNMP | 
|  |  | 
|  | Channel Bonding documentation can be found in the Linux kernel source: | 
|  | /Documentation/networking/bonding.txt | 
|  |  | 
|  |  | 
|  | Identifying Your Adapter | 
|  | ======================== | 
|  |  | 
|  | 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 network drivers for Linux, refer to the following | 
|  | website. In the search field, enter your adapter name or type, or use the | 
|  | networking link on the left to search for your adapter: | 
|  |  | 
|  | http://downloadfinder.intel.com/scripts-df/support_intel.asp | 
|  |  | 
|  | Driver Configuration Parameters | 
|  | =============================== | 
|  |  | 
|  | The default value for each parameter is generally the recommended setting, | 
|  | unless otherwise noted. | 
|  |  | 
|  | Rx Descriptors: Number of receive descriptors. A receive descriptor is a data | 
|  | structure that describes a receive buffer and its attributes to the network | 
|  | controller. The data in the descriptor is used by the controller to write | 
|  | data from the controller to host memory. In the 3.x.x driver the valid range | 
|  | for this parameter is 64-256. The default value is 64. This parameter can be | 
|  | changed using the command: | 
|  |  | 
|  | ethtool -G eth? rx n, where n is the number of desired rx descriptors. | 
|  |  | 
|  | Tx Descriptors: Number of transmit descriptors. A transmit descriptor is a data | 
|  | structure that describes a transmit buffer and its attributes to the network | 
|  | controller. The data in the descriptor is used by the controller to read | 
|  | data from the host memory to the controller. In the 3.x.x driver the valid | 
|  | range for this parameter is 64-256. The default value is 64. This parameter | 
|  | can be changed using the command: | 
|  |  | 
|  | ethtool -G eth? tx n, where n is the number of desired tx descriptors. | 
|  |  | 
|  | Speed/Duplex: The driver auto-negotiates the link speed and duplex settings by | 
|  | default. Ethtool can be used as follows to force speed/duplex. | 
|  |  | 
|  | ethtool -s eth?  autoneg off speed {10|100} duplex {full|half} | 
|  |  | 
|  | NOTE: setting the speed/duplex to incorrect values will cause the link to | 
|  | fail. | 
|  |  | 
|  | Event Log Message Level:  The driver uses the message level flag to log events | 
|  | to syslog. The message level can be set at driver load time. It can also be | 
|  | set using the command: | 
|  |  | 
|  | ethtool -s eth? msglvl n | 
|  |  | 
|  |  | 
|  | Additional Configurations | 
|  | ========================= | 
|  |  | 
|  | Configuring the Driver on Different Distributions | 
|  | ------------------------------------------------- | 
|  |  | 
|  | Configuring a network driver to load properly when the system is started is | 
|  | distribution dependent. Typically, the configuration process involves adding | 
|  | an alias line to /etc/modules.conf or /etc/modprobe.conf as well as editing | 
|  | other system startup scripts and/or configuration files.  Many popular Linux | 
|  | distributions ship with tools to make these changes for you. To learn the | 
|  | proper way to configure a network device for your system, refer to your | 
|  | distribution documentation.  If during this process you are asked for the | 
|  | driver or module name, the name for the Linux Base Driver for the Intel | 
|  | PRO/100 Family of Adapters is e100. | 
|  |  | 
|  | As an example, if you install the e100 driver for two PRO/100 adapters | 
|  | (eth0 and eth1), add the following to modules.conf or modprobe.conf: | 
|  |  | 
|  | alias eth0 e100 | 
|  | alias eth1 e100 | 
|  |  | 
|  | Viewing Link Messages | 
|  | --------------------- | 
|  | In order to see link messages and other Intel driver information on your | 
|  | console, you must set the dmesg level up to six. This can be done by | 
|  | entering the following on the command line before loading the e100 driver: | 
|  |  | 
|  | dmesg -n 8 | 
|  |  | 
|  | If you wish to see all messages issued by the driver, including debug | 
|  | messages, set the dmesg level to eight. | 
|  |  | 
|  | NOTE: This setting is not saved across reboots. | 
|  |  | 
|  |  | 
|  | Ethtool | 
|  | ------- | 
|  |  | 
|  | The driver utilizes the ethtool interface for driver configuration and | 
|  | diagnostics, as well as displaying statistical information.  Ethtool | 
|  | version 1.6 or later is required for this functionality. | 
|  |  | 
|  | The latest release of ethtool can be found from | 
|  | http://sourceforge.net/projects/gkernel. | 
|  |  | 
|  | NOTE: Ethtool 1.6 only supports a limited set of ethtool options. Support | 
|  | for a more complete ethtool feature set can be enabled by upgrading | 
|  | ethtool to ethtool-1.8.1. | 
|  |  | 
|  |  | 
|  | Enabling Wake on LAN* (WoL) | 
|  | --------------------------- | 
|  | WoL is provided through the Ethtool* utility. Ethtool is included with Red | 
|  | Hat* 8.0. For other Linux distributions, download and install Ethtool from | 
|  | the following website: http://sourceforge.net/projects/gkernel. | 
|  |  | 
|  | For instructions on enabling WoL with Ethtool, refer to the Ethtool man page. | 
|  |  | 
|  | WoL will be enabled on the system during the next shut down or reboot. For | 
|  | this driver version, in order to enable WoL, the e100 driver must be | 
|  | loaded when shutting down or rebooting the system. | 
|  |  | 
|  |  | 
|  | NAPI | 
|  | ---- | 
|  |  | 
|  | NAPI (Rx polling mode) is supported in the e100 driver. | 
|  |  | 
|  | See www.cyberus.ca/~hadi/usenix-paper.tgz for more information on NAPI. | 
|  |  | 
|  | Multiple Interfaces on Same Ethernet Broadcast Network | 
|  | ------------------------------------------------------ | 
|  |  | 
|  | Due to the default ARP behavior on Linux, it is not possible to have | 
|  | one system on two IP networks in the same Ethernet broadcast domain | 
|  | (non-partitioned switch) behave as expected. All Ethernet interfaces | 
|  | will respond to IP traffic for any IP address assigned to the system. | 
|  | This results in unbalanced receive traffic. | 
|  |  | 
|  | If you have multiple interfaces in a server, either turn on ARP | 
|  | filtering by | 
|  |  | 
|  | (1) entering: echo 1 > /proc/sys/net/ipv4/conf/all/arp_filter | 
|  | (this only works if your kernel's version is higher than 2.4.5), or | 
|  |  | 
|  | (2) installing the interfaces in separate broadcast domains (either | 
|  | in different switches or in a switch partitioned to VLANs). | 
|  |  | 
|  |  | 
|  | Support | 
|  | ======= | 
|  |  | 
|  | For general information, go to the Intel support website at: | 
|  |  | 
|  | http://support.intel.com | 
|  |  | 
|  | or the Intel Wired Networking project hosted by Sourceforge at: | 
|  |  | 
|  | http://sourceforge.net/projects/e1000 | 
|  |  | 
|  | 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 e1000-devel@lists.sourceforge.net. | 
|  |  | 
|  |  | 
|  | 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 file COPYING 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. |