blob: f81111eba9c5dd157aecdd1f1370031d3d1b1f0f [file] [log] [blame]
Tobin C. Harding32e69962018-06-22 10:37:05 +10001==============================================================
Linus Torvalds1da177e2005-04-16 15:20:36 -07002Linux* Base Driver for the Intel(R) PRO/100 Family of Adapters
3==============================================================
4
Jeff Kirsher85d634452018-05-10 12:20:13 -07005June 1, 2018
Linus Torvalds1da177e2005-04-16 15:20:36 -07006
7Contents
8========
9
10- In This Release
11- Identifying Your Adapter
Jesse Brandeburg823f8dd2006-03-14 15:51:07 -080012- Building and Installation
Linus Torvalds1da177e2005-04-16 15:20:36 -070013- Driver Configuration Parameters
14- Additional Configurations
Jesse Brandeburg823f8dd2006-03-14 15:51:07 -080015- Known Issues
Linus Torvalds1da177e2005-04-16 15:20:36 -070016- Support
17
18
19In This Release
20===============
21
22This file describes the Linux* Base Driver for the Intel(R) PRO/100 Family of
Jesse Brandeburg823f8dd2006-03-14 15:51:07 -080023Adapters. This driver includes support for Itanium(R)2-based systems.
24
25For questions related to hardware requirements, refer to the documentation
26supplied with your Intel PRO/100 adapter.
27
28The following features are now available in supported kernels:
29 - Native VLANs
30 - Channel Bonding (teaming)
31 - SNMP
32
33Channel Bonding documentation can be found in the Linux kernel source:
34/Documentation/networking/bonding.txt
35
Linus Torvalds1da177e2005-04-16 15:20:36 -070036
37Identifying Your Adapter
38========================
39
Jeff Kirsher85d634452018-05-10 12:20:13 -070040For information on how to identify your adapter, and for the latest Intel
41network drivers, refer to the Intel Support website:
42http://www.intel.com/support
Linus Torvalds1da177e2005-04-16 15:20:36 -070043
44Driver Configuration Parameters
45===============================
46
47The default value for each parameter is generally the recommended setting,
48unless otherwise noted.
49
Mauro Carvalho Chehabb203cc72018-06-26 06:49:09 -030050Rx Descriptors:
51 Number of receive descriptors. A receive descriptor is a data
Jesse Brandeburg823f8dd2006-03-14 15:51:07 -080052 structure that describes a receive buffer and its attributes to the network
53 controller. The data in the descriptor is used by the controller to write
54 data from the controller to host memory. In the 3.x.x driver the valid range
Jeff Kirsher85d634452018-05-10 12:20:13 -070055 for this parameter is 64-256. The default value is 256. This parameter can be
56 changed using the command::
Jesse Brandeburg823f8dd2006-03-14 15:51:07 -080057
Mauro Carvalho Chehabb203cc72018-06-26 06:49:09 -030058 ethtool -G eth? rx n
Jeff Kirsher85d634452018-05-10 12:20:13 -070059
60 Where n is the number of desired Rx descriptors.
Linus Torvalds1da177e2005-04-16 15:20:36 -070061
Mauro Carvalho Chehabb203cc72018-06-26 06:49:09 -030062Tx Descriptors:
63 Number of transmit descriptors. A transmit descriptor is a data
Jesse Brandeburg823f8dd2006-03-14 15:51:07 -080064 structure that describes a transmit buffer and its attributes to the network
65 controller. The data in the descriptor is used by the controller to read
66 data from the host memory to the controller. In the 3.x.x driver the valid
Jeff Kirsher85d634452018-05-10 12:20:13 -070067 range for this parameter is 64-256. The default value is 128. This parameter
68 can be changed using the command::
Linus Torvalds1da177e2005-04-16 15:20:36 -070069
Mauro Carvalho Chehabb203cc72018-06-26 06:49:09 -030070 ethtool -G eth? tx n
Jeff Kirsher85d634452018-05-10 12:20:13 -070071
72 Where n is the number of desired Tx descriptors.
Linus Torvalds1da177e2005-04-16 15:20:36 -070073
Mauro Carvalho Chehabb203cc72018-06-26 06:49:09 -030074Speed/Duplex:
75 The driver auto-negotiates the link speed and duplex settings by
Jeff Kirsher85d634452018-05-10 12:20:13 -070076 default. The ethtool utility can be used as follows to force speed/duplex.::
Linus Torvalds1da177e2005-04-16 15:20:36 -070077
Mauro Carvalho Chehabb203cc72018-06-26 06:49:09 -030078 ethtool -s eth? autoneg off speed {10|100} duplex {full|half}
Linus Torvalds1da177e2005-04-16 15:20:36 -070079
80 NOTE: setting the speed/duplex to incorrect values will cause the link to
81 fail.
82
Mauro Carvalho Chehabb203cc72018-06-26 06:49:09 -030083Event Log Message Level:
84 The driver uses the message level flag to log events
Jesse Brandeburg823f8dd2006-03-14 15:51:07 -080085 to syslog. The message level can be set at driver load time. It can also be
Jeff Kirsher85d634452018-05-10 12:20:13 -070086 set using the command::
Linus Torvalds1da177e2005-04-16 15:20:36 -070087
Mauro Carvalho Chehabb203cc72018-06-26 06:49:09 -030088 ethtool -s eth? msglvl n
Linus Torvalds1da177e2005-04-16 15:20:36 -070089
Jesse Brandeburg823f8dd2006-03-14 15:51:07 -080090
Linus Torvalds1da177e2005-04-16 15:20:36 -070091Additional Configurations
92=========================
93
Tobin C. Harding3b0c3eb2018-06-22 10:37:07 +100094Configuring the Driver on Different Distributions
95-------------------------------------------------
Linus Torvalds1da177e2005-04-16 15:20:36 -070096
Tobin C. Harding3b0c3eb2018-06-22 10:37:07 +100097Configuring a network driver to load properly when the system is started
98is distribution dependent. Typically, the configuration process involves
Mauro Carvalho Chehabb203cc72018-06-26 06:49:09 -030099adding an alias line to `/etc/modprobe.d/*.conf` as well as editing other
Tobin C. Harding3b0c3eb2018-06-22 10:37:07 +1000100system startup scripts and/or configuration files. Many popular Linux
101distributions ship with tools to make these changes for you. To learn
102the proper way to configure a network device for your system, refer to
103your distribution documentation. If during this process you are asked
104for the driver or module name, the name for the Linux Base Driver for
105the Intel PRO/100 Family of Adapters is e100.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700106
Tobin C. Harding3b0c3eb2018-06-22 10:37:07 +1000107As an example, if you install the e100 driver for two PRO/100 adapters
108(eth0 and eth1), add the following to a configuration file in
109/etc/modprobe.d/::
Linus Torvalds1da177e2005-04-16 15:20:36 -0700110
111 alias eth0 e100
112 alias eth1 e100
113
Tobin C. Harding3b0c3eb2018-06-22 10:37:07 +1000114Viewing Link Messages
115---------------------
116
117In order to see link messages and other Intel driver information on your
118console, you must set the dmesg level up to six. This can be done by
119entering the following on the command line before loading the e100
120driver::
Linus Torvalds1da177e2005-04-16 15:20:36 -0700121
Jeff Kirsher85d634452018-05-10 12:20:13 -0700122 dmesg -n 6
Linus Torvalds1da177e2005-04-16 15:20:36 -0700123
Tobin C. Harding3b0c3eb2018-06-22 10:37:07 +1000124If you wish to see all messages issued by the driver, including debug
125messages, set the dmesg level to eight.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700126
Tobin C. Harding3b0c3eb2018-06-22 10:37:07 +1000127NOTE: This setting is not saved across reboots.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700128
Tobin C. Harding3b0c3eb2018-06-22 10:37:07 +1000129ethtool
130-------
Jesse Brandeburg823f8dd2006-03-14 15:51:07 -0800131
Tobin C. Harding3b0c3eb2018-06-22 10:37:07 +1000132The driver utilizes the ethtool interface for driver configuration and
133diagnostics, as well as displaying statistical information. The ethtool
134version 1.6 or later is required for this functionality.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700135
Tobin C. Harding3b0c3eb2018-06-22 10:37:07 +1000136The latest release of ethtool can be found from
137https://www.kernel.org/pub/software/network/ethtool/
Linus Torvalds1da177e2005-04-16 15:20:36 -0700138
Tobin C. Harding3b0c3eb2018-06-22 10:37:07 +1000139Enabling Wake on LAN* (WoL)
140---------------------------
141WoL is provided through the ethtool* utility. For instructions on
142enabling WoL with ethtool, refer to the ethtool man page. WoL will be
143enabled on the system during the next shut down or reboot. For this
144driver version, in order to enable WoL, the e100 driver must be loaded
145when shutting down or rebooting the system.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700146
Tobin C. Harding3b0c3eb2018-06-22 10:37:07 +1000147NAPI
148----
Linus Torvalds1da177e2005-04-16 15:20:36 -0700149
Tobin C. Harding3b0c3eb2018-06-22 10:37:07 +1000150NAPI (Rx polling mode) is supported in the e100 driver.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700151
Tobin C. Harding3b0c3eb2018-06-22 10:37:07 +1000152See https://wiki.linuxfoundation.org/networking/napi for more
153information on NAPI.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700154
Tobin C. Harding3b0c3eb2018-06-22 10:37:07 +1000155Multiple Interfaces on Same Ethernet Broadcast Network
156------------------------------------------------------
Linus Torvalds1da177e2005-04-16 15:20:36 -0700157
Tobin C. Harding3b0c3eb2018-06-22 10:37:07 +1000158Due to the default ARP behavior on Linux, it is not possible to have one
159system on two IP networks in the same Ethernet broadcast domain
160(non-partitioned switch) behave as expected. All Ethernet interfaces
161will respond to IP traffic for any IP address assigned to the system.
162This results in unbalanced receive traffic.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700163
Tobin C. Harding3b0c3eb2018-06-22 10:37:07 +1000164If you have multiple interfaces in a server, either turn on ARP
165filtering by
Jesse Brandeburg823f8dd2006-03-14 15:51:07 -0800166
Mauro Carvalho Chehabb203cc72018-06-26 06:49:09 -0300167(1) entering::
168
169 echo 1 > /proc/sys/net/ipv4/conf/all/arp_filter
170
Tobin C. Harding3b0c3eb2018-06-22 10:37:07 +1000171 (this only works if your kernel's version is higher than 2.4.5), or
Jesse Brandeburg823f8dd2006-03-14 15:51:07 -0800172
Tobin C. Harding3b0c3eb2018-06-22 10:37:07 +1000173(2) installing the interfaces in separate broadcast domains (either
174 in different switches or in a switch partitioned to VLANs).
Jesse Brandeburg823f8dd2006-03-14 15:51:07 -0800175
176
Linus Torvalds1da177e2005-04-16 15:20:36 -0700177Support
178=======
Linus Torvalds1da177e2005-04-16 15:20:36 -0700179For general information, go to the Intel support website at:
Jeff Kirsher85d634452018-05-10 12:20:13 -0700180http://www.intel.com/support/
Linus Torvalds1da177e2005-04-16 15:20:36 -0700181
Jeff Kirsher85d634452018-05-10 12:20:13 -0700182or the Intel Wired Networking project hosted by Sourceforge at:
183http://sourceforge.net/projects/e1000
184If an issue is identified with the released source code on a supported kernel
185with a supported adapter, email the specific information related to the issue
186to e1000-devel@lists.sf.net.