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: src/share/man/man4/em.4,v 1.30 2008/10/06 21:55:53 simon Exp $ 33.\" 34.Dd April 7, 2012 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 41To compile this driver into the kernel, 42place the following lines in your 43kernel configuration file: 44.Bd -ragged -offset indent 45.Cd "device ig_hal" 46.Cd "device em" 47.Ed 48.Pp 49Alternatively, to load the driver as a 50module at boot time, place the following lines in 51.Xr loader.conf 5 : 52.Bd -literal -offset indent 53ig_hal_load="YES" 54if_em_load="YES" 55.Ed 56.Sh DESCRIPTION 57The 58.Nm 59driver provides support for PCI Gigabit Ethernet adapters based on 60the Intel 82540, 82541ER, 82541PI, 82542, 82543, 82544, 82545, 82546, 6182546EB, 82546GB, 82547, 82571, 81572, 82573, and 82574 Ethernet 62controller chips. 63The driver supports Transmit/Receive checksum offload 64and Jumbo Frames on all but 82542-based adapters. 65.\" Furthermore it supports TCP segmentation offload (TSO) on all adapters but 66.\" those based on the 82543, 82544 and 82547 controller chips. 67For further hardware information, see the 68.Pa README 69included with the driver. 70.Pp 71For questions related to hardware requirements, 72refer to the documentation supplied with your Intel PRO/1000 adapter. 73All hardware requirements listed apply to use with 74.Dx . 75.Pp 76Support for Jumbo Frames is provided via the interface MTU setting. 77Selecting an MTU larger than 1500 bytes with the 78.Xr ifconfig 8 79utility configures the adapter to receive and transmit Jumbo Frames. 80The maximum MTU size for Jumbo Frames is 16114. 81.Pp 82This driver version supports VLANs. 83The 84.Nm 85driver supports the following media types: 86.Bl -tag -width ".Cm 10baseT/UTP" 87.It Cm autoselect 88Enables auto-negotiation for speed and duplex. 89.It Cm 10baseT/UTP 90Sets 10Mbps operation. 91Use the 92.Cm mediaopt 93option to select 94.Cm full-duplex 95mode. 96.It Cm 100baseTX 97Sets 100Mbps operation. 98Use the 99.Cm mediaopt 100option to select 101.Cm full-duplex 102mode. 103.It Cm 1000baseSX 104Sets 1000Mbps operation. 105Only 106.Cm full-duplex 107mode is supported at this speed. 108.It Cm 1000baseT 109Sets 1000Mbps operation. 110Only 111.Cm full-duplex 112mode is supported at this speed. 113.El 114.Pp 115The 116.Nm 117driver supports the following media options: 118.Bl -tag -width ".Cm full-duplex" 119.It Cm full-duplex 120Forces full-duplex operation 121.It Cm half-duplex 122Forces half-duplex operation. 123.El 124.Pp 125Only use 126.Cm mediaopt 127to set the driver to 128.Cm full-duplex . 129If 130.Cm mediaopt 131is not specified, the driver defaults to 132.Cm half-duplex . 133.Pp 134For more information on configuring this device, see 135.Xr ifconfig 8 . 136The 137.Nm 138driver supports 139.Xr polling 4 . 140.Sh HARDWARE 141The 142.Nm 143driver supports Gigabit Ethernet adapters based on the Intel 14482540, 82541ER, 82541PI, 82542, 82543, 82544, 82545, 82546, 82546EB, 14582546GB, 82547, 82571, 82572, 82573, and 82574 controller chips: 146.Pp 147.Bl -bullet -compact 148.It 149Intel PRO/1000 CT Network Connection (82547) 150.It 151Intel PRO/1000 F Server Adapter (82543) 152.It 153Intel PRO/1000 Gigabit Server Adapter (82542) 154.It 155Intel PRO/1000 GT Desktop Adapter (82541PI) 156.It 157Intel PRO/1000 MF Dual Port Server Adapter (82546) 158.It 159Intel PRO/1000 MF Server Adapter (82545) 160.It 161Intel PRO/1000 MF Server Adapter (LX) (82545) 162.It 163Intel PRO/1000 MT Desktop Adapter (82540) 164.It 165Intel PRO/1000 MT Desktop Adapter (82541) 166.It 167Intel PRO/1000 MT Dual Port Server Adapter (82546) 168.It 169Intel PRO/1000 MT Quad Port Server Adapter (82546EB) 170.It 171Intel PRO/1000 MT Server Adapter (82545) 172.It 173Intel PRO/1000 PF Dual Port Server Adapter (82571) 174.It 175Intel PRO/1000 PF Quad Port Server Adapter (82571) 176.It 177Intel PRO/1000 PF Server Adapter (82572) 178.It 179Intel PRO/1000 PT Desktop Adapter (82572) 180.It 181Intel PRO/1000 PT Dual Port Server Adapter (82571) 182.It 183Intel PRO/1000 PT Quad Port Server Adapter (82571) 184.It 185Intel PRO/1000 PT Server Adapter (82572) 186.It 187Intel PRO/1000 T Desktop Adapter (82544) 188.It 189Intel PRO/1000 T Server Adapter (82543) 190.It 191Intel PRO/1000 XF Server Adapter (82544) 192.It 193Intel PRO/1000 XT Server Adapter (82544) 194.El 195.Sh LOADER TUNABLES 196Tunables can be set at the 197.Xr loader 8 198prompt before booting the kernel or stored in 199.Xr loader.conf 5 . 200.Bl -tag -width indent 201.It Va hw.em.int_throttle_ceil 202Hardware interrupt throttling rate. 203The default value is 10000Hz. 204.It Va hw.em.rxd 205Number of receive descriptors allocated by the driver. 206The default value is 256. 207The 82542 and 82543-based adapters can handle up to 256 descriptors, 208while others can have up to 4096. 209.It Va hw.em.txd 210Number of transmit descriptors allocated by the driver. 211The default value is 256. 212The 82542 and 82543-based adapters can handle up to 256 descriptors, 213while others can have up to 4096. 214.It Va hw.em.int_tx_nsegs 215This value controls how many transmit descriptors should be consumed 216by the hardware before the hardware generates a transmit interrupt. 217The default value is 1/16 of the number of transmit descriptors. 218If 219.Xr polling 4 220is not used on the hardware and 221the major part of the transmitted data are bulk data, 222this value could safely be set to 1/2 of the number of transmit descriptors. 223.It Va hw.em.msi.enable 224By default, the driver will use MSI if it is supported. 225This behavior can be turned off by setting this tunable to 0. 226.El 227.Sh DIAGNOSTICS 228.Bl -diag 229.It "em%d: Unable to allocate bus resource: memory" 230A fatal initialization error has occurred. 231.It "em%d: Unable to allocate bus resource: interrupt" 232A fatal initialization error has occurred. 233.It "em%d: watchdog timeout -- resetting" 234The device has stopped responding to the network, or there is a problem with 235the network connection (cable). 236.El 237.Sh SUPPORT 238For general information and support, 239go to the Intel support website at: 240.Pa http://support.intel.com . 241.Pp 242If an issue is identified with the released source code on the supported kernel 243with a supported adapter, email the specific information related to the 244issue to 245.Aq freebsdnic@mailbox.intel.com . 246.Sh SEE ALSO 247.Xr arp 4 , 248.Xr ifmedia 4 , 249.Xr netintro 4 , 250.Xr ng_ether 4 , 251.Xr polling 4 , 252.Xr vlan 4 , 253.Xr ifconfig 8 254.Sh HISTORY 255The 256.Nm 257device driver first appeared in 258.Fx 4.4 . 259.Sh AUTHORS 260The 261.Nm 262driver was written by 263.An Intel Corporation Aq freebsdnic@mailbox.intel.com . 264