1 |
.\" Copyright (c) 2001-2003, Intel Corporation |
2 |
.\" All rights reserved. |
3 |
.\" |
4 |
.\" Redistribution and use in source and binary forms, with or without |
5 |
.\" modification, are permitted provided that the following conditions are met: |
6 |
.\" |
7 |
.\" 1. Redistributions of source code must retain the above copyright notice, |
8 |
.\" this list of conditions and the following disclaimer. |
9 |
.\" |
10 |
.\" 2. Redistributions in binary form must reproduce the above copyright |
11 |
.\" notice, this list of conditions and the following disclaimer in the |
12 |
.\" documentation and/or other materials provided with the distribution. |
13 |
.\" |
14 |
.\" 3. Neither the name of the Intel Corporation nor the names of its |
15 |
.\" contributors may be used to endorse or promote products derived from |
16 |
.\" this software without specific prior written permission. |
17 |
.\" |
18 |
.\" THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" |
19 |
.\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE |
20 |
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE |
21 |
.\" ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE |
22 |
.\" LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR |
23 |
.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF |
24 |
.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS |
25 |
.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN |
26 |
.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) |
27 |
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE |
28 |
.\" POSSIBILITY OF SUCH DAMAGE. |
29 |
.\" |
30 |
.\" * Other names and brands may be claimed as the property of others. |
31 |
.\" |
32 |
.\" $FreeBSD: stable/10/share/man/man4/em.4 294958 2016-01-27 22:31:08Z marius $ |
33 |
.\" |
34 |
.Dd August 16, 2015 |
35 |
.Dt EM 4 |
36 |
.Os |
37 |
.Sh NAME |
38 |
.Nm em |
39 |
.Nd "Intel(R) PRO/1000 Gigabit Ethernet adapter driver" |
40 |
.Sh SYNOPSIS |
41 |
To compile this driver into the kernel, |
42 |
place the following line in your |
43 |
kernel configuration file: |
44 |
.Bd -ragged -offset indent |
45 |
.Cd "device em" |
46 |
.Ed |
47 |
.Pp |
48 |
Optional multiqueue support is available via the following kernel |
49 |
compile options: |
50 |
.Bd -ragged -offset indent |
51 |
.Cd "options EM_MULTIQUEUE" |
52 |
.Ed |
53 |
.Pp |
54 |
Note: Activating EM_MULTIQUEUE support is not supported by Intel. |
55 |
.Pp |
56 |
Alternatively, to load the driver as a |
57 |
module at boot time, place the following line in |
58 |
.Xr loader.conf 5 : |
59 |
.Bd -literal -offset indent |
60 |
if_em_load="YES" |
61 |
.Ed |
62 |
.Sh DESCRIPTION |
63 |
The |
64 |
.Nm |
65 |
driver provides support for PCI Gigabit Ethernet adapters based on |
66 |
the Intel 82540, 82541ER, 82541PI, 82542, 82543, 82544, 82545, 82546, |
67 |
82546EB, 82546GB, 82547, 82571, 81572, 82573, and 82574 Ethernet |
68 |
controller chips. |
69 |
The driver supports Transmit/Receive checksum offload |
70 |
and Jumbo Frames on all but 82542-based adapters. |
71 |
Furthermore it supports TCP segmentation offload (TSO) on all adapters but |
72 |
those based on the 82543, 82544 and 82547 controller chips. |
73 |
The identification LEDs of the adapters supported by the |
74 |
.Nm |
75 |
driver can be controlled via the |
76 |
.Xr led 4 |
77 |
API for localization purposes. |
78 |
For further hardware information, see the |
79 |
.Pa README |
80 |
included with the driver. |
81 |
.Pp |
82 |
For questions related to hardware requirements, |
83 |
refer to the documentation supplied with your Intel PRO/1000 adapter. |
84 |
All hardware requirements listed apply to use with |
85 |
.Fx . |
86 |
.Pp |
87 |
Support for Jumbo Frames is provided via the interface MTU setting. |
88 |
Selecting an MTU larger than 1500 bytes with the |
89 |
.Xr ifconfig 8 |
90 |
utility configures the adapter to receive and transmit Jumbo Frames. |
91 |
The maximum MTU size for Jumbo Frames is 16114. |
92 |
.Pp |
93 |
This driver version supports VLANs. |
94 |
The |
95 |
.Nm |
96 |
driver supports the following media types: |
97 |
.Bl -tag -width ".Cm 10baseT/UTP" |
98 |
.It Cm autoselect |
99 |
Enables auto-negotiation for speed and duplex. |
100 |
.It Cm 10baseT/UTP |
101 |
Sets 10Mbps operation. |
102 |
Use the |
103 |
.Cm mediaopt |
104 |
option to select |
105 |
.Cm full-duplex |
106 |
mode. |
107 |
.It Cm 100baseTX |
108 |
Sets 100Mbps operation. |
109 |
Use the |
110 |
.Cm mediaopt |
111 |
option to select |
112 |
.Cm full-duplex |
113 |
mode. |
114 |
.It Cm 1000baseSX |
115 |
Sets 1000Mbps operation. |
116 |
Only |
117 |
.Cm full-duplex |
118 |
mode is supported at this speed. |
119 |
.It Cm 1000baseTX |
120 |
Sets 1000Mbps operation. |
121 |
Only |
122 |
.Cm full-duplex |
123 |
mode is supported at this speed. |
124 |
.El |
125 |
.Pp |
126 |
The |
127 |
.Nm |
128 |
driver supports the following media options: |
129 |
.Bl -tag -width ".Cm full-duplex" |
130 |
.It Cm full-duplex |
131 |
Forces full-duplex operation |
132 |
.It Cm half-duplex |
133 |
Forces half-duplex operation. |
134 |
.El |
135 |
.Pp |
136 |
Only use |
137 |
.Cm mediaopt |
138 |
to set the driver to |
139 |
.Cm full-duplex . |
140 |
If |
141 |
.Cm mediaopt |
142 |
is not specified, the driver defaults to |
143 |
.Cm half-duplex . |
144 |
.Pp |
145 |
For more information on configuring this device, see |
146 |
.Xr ifconfig 8 . |
147 |
.Sh HARDWARE |
148 |
The |
149 |
.Nm |
150 |
driver supports Gigabit Ethernet adapters based on the Intel |
151 |
82540, 82541ER, 82541PI, 82542, 82543, 82544, 82545, 82546, 82546EB, |
152 |
82546GB, 82547, 82571, 82572, 82573, and 82574 controller chips: |
153 |
.Pp |
154 |
.Bl -bullet -compact |
155 |
.It |
156 |
Intel PRO/1000 CT Network Connection (82547) |
157 |
.It |
158 |
Intel PRO/1000 F Server Adapter (82543) |
159 |
.It |
160 |
Intel PRO/1000 Gigabit Server Adapter (82542) |
161 |
.It |
162 |
Intel PRO/1000 GT Desktop Adapter (82541PI) |
163 |
.It |
164 |
Intel PRO/1000 MF Dual Port Server Adapter (82546) |
165 |
.It |
166 |
Intel PRO/1000 MF Server Adapter (82545) |
167 |
.It |
168 |
Intel PRO/1000 MF Server Adapter (LX) (82545) |
169 |
.It |
170 |
Intel PRO/1000 MT Desktop Adapter (82540) |
171 |
.It |
172 |
Intel PRO/1000 MT Desktop Adapter (82541) |
173 |
.It |
174 |
Intel PRO/1000 MT Dual Port Server Adapter (82546) |
175 |
.It |
176 |
Intel PRO/1000 MT Quad Port Server Adapter (82546EB) |
177 |
.It |
178 |
Intel PRO/1000 MT Server Adapter (82545) |
179 |
.It |
180 |
Intel PRO/1000 PF Dual Port Server Adapter (82571) |
181 |
.It |
182 |
Intel PRO/1000 PF Quad Port Server Adapter (82571) |
183 |
.It |
184 |
Intel PRO/1000 PF Server Adapter (82572) |
185 |
.It |
186 |
Intel PRO/1000 PT Desktop Adapter (82572) |
187 |
.It |
188 |
Intel PRO/1000 PT Dual Port Server Adapter (82571) |
189 |
.It |
190 |
Intel PRO/1000 PT Quad Port Server Adapter (82571) |
191 |
.It |
192 |
Intel PRO/1000 PT Server Adapter (82572) |
193 |
.It |
194 |
Intel PRO/1000 T Desktop Adapter (82544) |
195 |
.It |
196 |
Intel PRO/1000 T Server Adapter (82543) |
197 |
.It |
198 |
Intel PRO/1000 XF Server Adapter (82544) |
199 |
.It |
200 |
Intel PRO/1000 XT Server Adapter (82544) |
201 |
.El |
202 |
.Sh LOADER TUNABLES |
203 |
Tunables can be set at the |
204 |
.Xr loader 8 |
205 |
prompt before booting the kernel or stored in |
206 |
.Xr loader.conf 5 . |
207 |
.Bl -tag -width indent |
208 |
.It Va hw.em.disable_crc_stripping |
209 |
Disable or enable hardware stripping of CRC field. |
210 |
This is mostly useful on BMC/IPMI shared interfaces where stripping the CRC |
211 |
causes remote access over IPMI to fail. |
212 |
Default 0 (enabled). |
213 |
.It Va hw.em.eee_setting |
214 |
Disable or enable Energy Efficient Ethernet. |
215 |
Default 1 (disabled). |
216 |
.It Va hw.em.msix |
217 |
Enable or disable MSI-X style interrupts. |
218 |
Default 1 (enabled). |
219 |
.It Va hw.em.smart_pwr_down |
220 |
Enable or disable smart power down features on newer adapters. |
221 |
Default 0 (disabled). |
222 |
.It Va hw.em.sbp |
223 |
Show bad packets when in promiscuous mode. |
224 |
Default 0 (off). |
225 |
.It Va hw.em.rxd |
226 |
Number of receive descriptors allocated by the driver. |
227 |
The default value is 1024 for adapters newer than 82547, |
228 |
and 256 for older ones. |
229 |
The 82542 and 82543-based adapters can handle up to 256 descriptors, |
230 |
while others can have up to 4096. |
231 |
.It Va hw.em.txd |
232 |
Number of transmit descriptors allocated by the driver. |
233 |
The default value is 1024 for adapters newer than 82547, |
234 |
and 256 for older ones. |
235 |
The 82542 and 82543-based adapters can handle up to 256 descriptors, |
236 |
while others can have up to 4096. |
237 |
.It Va hw.em.rx_int_delay |
238 |
This value delays the generation of receive interrupts in units of |
239 |
1.024 microseconds. |
240 |
The default value is 0, since adapters may hang with this feature |
241 |
being enabled. |
242 |
.It Va hw.em.rx_abs_int_delay |
243 |
If |
244 |
.Va hw.em.rx_int_delay |
245 |
is non-zero, this tunable limits the maximum delay in which a receive |
246 |
interrupt is generated. |
247 |
.It Va hw.em.tx_int_delay |
248 |
This value delays the generation of transmit interrupts in units of |
249 |
1.024 microseconds. |
250 |
The default value is 64. |
251 |
.It Va hw.em.tx_abs_int_delay |
252 |
If |
253 |
.Va hw.em.tx_int_delay |
254 |
is non-zero, this tunable limits the maximum delay in which a transmit |
255 |
interrupt is generated. |
256 |
.It Va hw.em.num_queues |
257 |
Number of hardware queues that will be configured on this adapter (maximum of 2) |
258 |
Defaults to 1. |
259 |
Only valid with kernel configuration |
260 |
.Cd "options EM_MULTIQUEUE". |
261 |
.El |
262 |
.Sh FILES |
263 |
.Bl -tag -width /dev/led/em* |
264 |
.It Pa /dev/led/em* |
265 |
identification LED device nodes |
266 |
.El |
267 |
.Sh EXAMPLES |
268 |
Make the identification LED of em0 blink: |
269 |
.Pp |
270 |
.Dl "echo f2 > /dev/led/em0" |
271 |
.Pp |
272 |
Turn the identification LED of em0 off again: |
273 |
.Pp |
274 |
.Dl "echo 0 > /dev/led/em0" |
275 |
.Sh DIAGNOSTICS |
276 |
.Bl -diag |
277 |
.It "em%d: Unable to allocate bus resource: memory" |
278 |
A fatal initialization error has occurred. |
279 |
.It "em%d: Unable to allocate bus resource: interrupt" |
280 |
A fatal initialization error has occurred. |
281 |
.It "em%d: watchdog timeout -- resetting" |
282 |
The device has stopped responding to the network, or there is a problem with |
283 |
the network connection (cable). |
284 |
.El |
285 |
.Sh SUPPORT |
286 |
For general information and support, |
287 |
go to the Intel support website at: |
288 |
.Pa http://support.intel.com . |
289 |
.Pp |
290 |
If an issue is identified with the released source code on the supported kernel |
291 |
with a supported adapter, email the specific information related to the |
292 |
issue to |
293 |
.Aq freebsd@intel.com . |
294 |
.Sh SEE ALSO |
295 |
.Xr altq 4 , |
296 |
.Xr arp 4 , |
297 |
.Xr igb 4 , |
298 |
.Xr led 4 , |
299 |
.Xr netintro 4 , |
300 |
.Xr ng_ether 4 , |
301 |
.Xr polling 4 , |
302 |
.Xr vlan 4 , |
303 |
.Xr ifconfig 8 |
304 |
.Sh HISTORY |
305 |
The |
306 |
.Nm |
307 |
device driver first appeared in |
308 |
.Fx 4.4 . |
309 |
.Sh AUTHORS |
310 |
The |
311 |
.Nm |
312 |
driver was written by |
313 |
.An Intel Corporation Aq freebsd@intel.com . |
314 |
.Sh BUGS |
315 |
.Pp |
316 |
Activating EM_MULTIQUEUE support requires MSI-X features. |