xref: /linux/Documentation/networking/device_drivers/ethernet/intel/e100.rst (revision 1ac731c529cd4d6adbce134754b51ff7d822b145)
1.. SPDX-License-Identifier: GPL-2.0+
2
3=============================================================
4Linux Base Driver for the Intel(R) PRO/100 Family of Adapters
5=============================================================
6
7June 1, 2018
8
9Contents
10========
11
12- In This Release
13- Identifying Your Adapter
14- Building and Installation
15- Driver Configuration Parameters
16- Additional Configurations
17- Known Issues
18- Support
19
20
21In This Release
22===============
23
24This file describes the Linux Base Driver for the Intel(R) PRO/100 Family of
25Adapters. This driver includes support for Itanium(R)2-based systems.
26
27For questions related to hardware requirements, refer to the documentation
28supplied with your Intel PRO/100 adapter.
29
30The following features are now available in supported kernels:
31 - Native VLANs
32 - Channel Bonding (teaming)
33 - SNMP
34
35Channel Bonding documentation can be found in the Linux kernel source:
36/Documentation/networking/bonding.rst
37
38
39Identifying Your Adapter
40========================
41
42For information on how to identify your adapter, and for the latest Intel
43network drivers, refer to the Intel Support website:
44https://www.intel.com/support
45
46Driver Configuration Parameters
47===============================
48
49The default value for each parameter is generally the recommended setting,
50unless otherwise noted.
51
52Rx Descriptors:
53   Number of receive descriptors. A receive descriptor is a data
54   structure that describes a receive buffer and its attributes to the network
55   controller. The data in the descriptor is used by the controller to write
56   data from the controller to host memory. In the 3.x.x driver the valid range
57   for this parameter is 64-256. The default value is 256. This parameter can be
58   changed using the command::
59
60     ethtool -G eth? rx n
61
62   Where n is the number of desired Rx descriptors.
63
64Tx Descriptors:
65   Number of transmit descriptors. A transmit descriptor is a data
66   structure that describes a transmit buffer and its attributes to the network
67   controller. The data in the descriptor is used by the controller to read
68   data from the host memory to the controller. In the 3.x.x driver the valid
69   range for this parameter is 64-256. The default value is 128. This parameter
70   can be changed using the command::
71
72     ethtool -G eth? tx n
73
74   Where n is the number of desired Tx descriptors.
75
76Speed/Duplex:
77   The driver auto-negotiates the link speed and duplex settings by
78   default. The ethtool utility can be used as follows to force speed/duplex.::
79
80     ethtool -s eth?  autoneg off speed {10|100} duplex {full|half}
81
82   NOTE: setting the speed/duplex to incorrect values will cause the link to
83   fail.
84
85Event Log Message Level:
86   The driver uses the message level flag to log events
87   to syslog. The message level can be set at driver load time. It can also be
88   set using the command::
89
90     ethtool -s eth? msglvl n
91
92
93Additional Configurations
94=========================
95
96Configuring the Driver on Different Distributions
97-------------------------------------------------
98
99Configuring a network driver to load properly when the system is started
100is distribution dependent.  Typically, the configuration process involves
101adding an alias line to `/etc/modprobe.d/*.conf` as well as editing other
102system startup scripts and/or configuration files.  Many popular Linux
103distributions ship with tools to make these changes for you.  To learn
104the proper way to configure a network device for your system, refer to
105your distribution documentation.  If during this process you are asked
106for the driver or module name, the name for the Linux Base Driver for
107the Intel PRO/100 Family of Adapters is e100.
108
109As an example, if you install the e100 driver for two PRO/100 adapters
110(eth0 and eth1), add the following to a configuration file in
111/etc/modprobe.d/::
112
113       alias eth0 e100
114       alias eth1 e100
115
116Viewing Link Messages
117---------------------
118
119In order to see link messages and other Intel driver information on your
120console, you must set the dmesg level up to six.  This can be done by
121entering the following on the command line before loading the e100
122driver::
123
124       dmesg -n 6
125
126If you wish to see all messages issued by the driver, including debug
127messages, set the dmesg level to eight.
128
129NOTE: This setting is not saved across reboots.
130
131ethtool
132-------
133
134The driver utilizes the ethtool interface for driver configuration and
135diagnostics, as well as displaying statistical information.  The ethtool
136version 1.6 or later is required for this functionality.
137
138The latest release of ethtool can be found from
139https://www.kernel.org/pub/software/network/ethtool/
140
141Enabling Wake on LAN (WoL)
142--------------------------
143WoL is provided through the ethtool utility.  For instructions on
144enabling WoL with ethtool, refer to the ethtool man page.  WoL will be
145enabled on the system during the next shut down or reboot.  For this
146driver version, in order to enable WoL, the e100 driver must be loaded
147when shutting down or rebooting the system.
148
149NAPI
150----
151
152NAPI (Rx polling mode) is supported in the e100 driver.
153
154See :ref:`Documentation/networking/napi.rst <napi>` for more information.
155
156Multiple Interfaces on Same Ethernet Broadcast Network
157------------------------------------------------------
158
159Due to the default ARP behavior on Linux, it is not possible to have one
160system on two IP networks in the same Ethernet broadcast domain
161(non-partitioned switch) behave as expected.  All Ethernet interfaces
162will respond to IP traffic for any IP address assigned to the system.
163This results in unbalanced receive traffic.
164
165If you have multiple interfaces in a server, either turn on ARP
166filtering by
167
168(1) entering::
169
170	echo 1 > /proc/sys/net/ipv4/conf/all/arp_filter
171
172    (this only works if your kernel's version is higher than 2.4.5), or
173
174(2) installing the interfaces in separate broadcast domains (either
175    in different switches or in a switch partitioned to VLANs).
176
177
178Support
179=======
180For general information, go to the Intel support website at:
181https://www.intel.com/support/
182
183If an issue is identified with the released source code on a supported kernel
184with a supported adapter, email the specific information related to the issue
185to intel-wired-lan@lists.osuosl.org.
186