1==============================================================
2Linux* Base Driver for the Intel(R) PRO/100 Family of Adapters
3==============================================================
4
5June 1, 2018
6
7Contents
8========
9
10- In This Release
11- Identifying Your Adapter
12- Building and Installation
13- Driver Configuration Parameters
14- Additional Configurations
15- Known Issues
16- Support
17
18
19In This Release
20===============
21
22This file describes the Linux* Base Driver for the Intel(R) PRO/100 Family of
23Adapters. 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
36
37Identifying Your Adapter
38========================
39
40For 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
43
44Driver Configuration Parameters
45===============================
46
47The default value for each parameter is generally the recommended setting,
48unless otherwise noted.
49
50Rx Descriptors:
51   Number of receive descriptors. A receive descriptor is a data
52   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
55   for this parameter is 64-256. The default value is 256. This parameter can be
56   changed using the command::
57
58     ethtool -G eth? rx n
59
60   Where n is the number of desired Rx descriptors.
61
62Tx Descriptors:
63   Number of transmit descriptors. A transmit descriptor is a data
64   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
67   range for this parameter is 64-256. The default value is 128. This parameter
68   can be changed using the command::
69
70     ethtool -G eth? tx n
71
72   Where n is the number of desired Tx descriptors.
73
74Speed/Duplex:
75   The driver auto-negotiates the link speed and duplex settings by
76   default. The ethtool utility can be used as follows to force speed/duplex.::
77
78     ethtool -s eth?  autoneg off speed {10|100} duplex {full|half}
79
80   NOTE: setting the speed/duplex to incorrect values will cause the link to
81   fail.
82
83Event Log Message Level:
84   The driver uses the message level flag to log events
85   to syslog. The message level can be set at driver load time. It can also be
86   set using the command::
87
88     ethtool -s eth? msglvl n
89
90
91Additional Configurations
92=========================
93
94Configuring the Driver on Different Distributions
95-------------------------------------------------
96
97Configuring a network driver to load properly when the system is started
98is distribution dependent.  Typically, the configuration process involves
99adding an alias line to `/etc/modprobe.d/*.conf` as well as editing other
100system 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.
106
107As 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/::
110
111       alias eth0 e100
112       alias eth1 e100
113
114Viewing 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::
121
122       dmesg -n 6
123
124If you wish to see all messages issued by the driver, including debug
125messages, set the dmesg level to eight.
126
127NOTE: This setting is not saved across reboots.
128
129ethtool
130-------
131
132The 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.
135
136The latest release of ethtool can be found from
137https://www.kernel.org/pub/software/network/ethtool/
138
139Enabling 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.
146
147NAPI
148----
149
150NAPI (Rx polling mode) is supported in the e100 driver.
151
152See https://wiki.linuxfoundation.org/networking/napi for more
153information on NAPI.
154
155Multiple Interfaces on Same Ethernet Broadcast Network
156------------------------------------------------------
157
158Due 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.
163
164If you have multiple interfaces in a server, either turn on ARP
165filtering by
166
167(1) entering::
168
169	echo 1 > /proc/sys/net/ipv4/conf/all/arp_filter
170
171    (this only works if your kernel's version is higher than 2.4.5), or
172
173(2) installing the interfaces in separate broadcast domains (either
174    in different switches or in a switch partitioned to VLANs).
175
176
177Support
178=======
179For general information, go to the Intel support website at:
180http://www.intel.com/support/
181
182or 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.
187