1c2183496SPrafulla Deuskar.\" Copyright (c) 2001-2003, Intel Corporation 21ac88dc0SPrafulla Deuskar.\" All rights reserved. 3c2183496SPrafulla Deuskar.\" 4c2183496SPrafulla Deuskar.\" Redistribution and use in source and binary forms, with or without 5c2183496SPrafulla Deuskar.\" modification, are permitted provided that the following conditions are met: 6c2183496SPrafulla Deuskar.\" 7c2183496SPrafulla Deuskar.\" 1. Redistributions of source code must retain the above copyright notice, 8c2183496SPrafulla Deuskar.\" this list of conditions and the following disclaimer. 9c2183496SPrafulla Deuskar.\" 10c2183496SPrafulla Deuskar.\" 2. Redistributions in binary form must reproduce the above copyright 11c2183496SPrafulla Deuskar.\" notice, this list of conditions and the following disclaimer in the 12c2183496SPrafulla Deuskar.\" documentation and/or other materials provided with the distribution. 13c2183496SPrafulla Deuskar.\" 14c2183496SPrafulla Deuskar.\" 3. Neither the name of the Intel Corporation nor the names of its 15c2183496SPrafulla Deuskar.\" contributors may be used to endorse or promote products derived from 16c2183496SPrafulla Deuskar.\" this software without specific prior written permission. 171ac88dc0SPrafulla Deuskar.\" 181ac88dc0SPrafulla Deuskar.\" THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 191ac88dc0SPrafulla Deuskar.\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 201ac88dc0SPrafulla Deuskar.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 21c2183496SPrafulla Deuskar.\" ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 22c2183496SPrafulla Deuskar.\" LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 23c2183496SPrafulla Deuskar.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 24c2183496SPrafulla Deuskar.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 25c2183496SPrafulla Deuskar.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 26c2183496SPrafulla Deuskar.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 27c2183496SPrafulla Deuskar.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 28c2183496SPrafulla Deuskar.\" POSSIBILITY OF SUCH DAMAGE. 291ac88dc0SPrafulla Deuskar.\" 30e4fe103dSPrafulla Deuskar.\" * Other names and brands may be claimed as the property of others. 31802a4af8SRuslan Ermilov.\" 32e4fe103dSPrafulla Deuskar.\" $FreeBSD$ 335461e585SPrafulla Deuskar.\" 34cb7e673cSChristian Brueffer.Dd September 15, 2006 351ac88dc0SPrafulla Deuskar.Dt EM 4 36802a4af8SRuslan Ermilov.Os 371ac88dc0SPrafulla Deuskar.Sh NAME 381ac88dc0SPrafulla Deuskar.Nm em 397d9c4565SChristian Brueffer.Nd "Intel(R) PRO/1000 Gigabit Ethernet adapter driver" 401ac88dc0SPrafulla Deuskar.Sh SYNOPSIS 4116d78bb8STom RhodesTo compile this driver into the kernel, 4278ad5421SRuslan Ermilovplace the following line in your 4390296834STom Rhodeskernel configuration file: 4486e3186eSTom Rhodes.Bd -ragged -offset indent 451ac88dc0SPrafulla Deuskar.Cd "device em" 4686e3186eSTom Rhodes.Ed 4786e3186eSTom Rhodes.Pp 4816d78bb8STom RhodesAlternatively, to load the driver as a 4916d78bb8STom Rhodesmodule at boot time, place the following line in 5086e3186eSTom Rhodes.Xr loader.conf 5 : 5186e3186eSTom Rhodes.Bd -literal -offset indent 5286e3186eSTom Rhodesif_em_load="YES" 5386e3186eSTom Rhodes.Ed 541ac88dc0SPrafulla Deuskar.Sh DESCRIPTION 551ac88dc0SPrafulla DeuskarThe 561ac88dc0SPrafulla Deuskar.Nm 5791461de4SChristian Bruefferdriver provides support for PCI Gigabit Ethernet adapters based on 587d9c4565SChristian Bruefferthe Intel 82540, 82541ER, 82541PI, 82542, 82543, 82544, 82545, 82546, 59554d7f67SChristian Brueffer82546EB, 82546GB, 82547, 82571, 81572 and 82573 Ethernet controller chips. 601ac88dc0SPrafulla DeuskarThe driver supports Transmit/Receive checksum offload 61cb7e673cSChristian Bruefferand Jumbo Frames on all but 82542-based adapters. 62cb7e673cSChristian BruefferFurthermore it supports TCP segmentation offload (TSO) on all adapters but 63cb7e673cSChristian Bruefferthose based on the 82543, 82544 and 82547 controller chips. 6491461de4SChristian BruefferFor further hardware information, see the 65802a4af8SRuslan Ermilov.Pa README 661ac88dc0SPrafulla Deuskarincluded with the driver. 671ac88dc0SPrafulla Deuskar.Pp 681ac88dc0SPrafulla DeuskarFor questions related to hardware requirements, 691ac88dc0SPrafulla Deuskarrefer to the documentation supplied with your Intel PRO/1000 adapter. 70802a4af8SRuslan ErmilovAll hardware requirements listed apply to use with 71802a4af8SRuslan Ermilov.Fx . 721ac88dc0SPrafulla Deuskar.Pp 73a59716d2SPrafulla DeuskarSupport for Jumbo Frames is provided via the interface MTU setting. 741ac88dc0SPrafulla DeuskarSelecting an MTU larger than 1500 bytes with the 751ac88dc0SPrafulla Deuskar.Xr ifconfig 8 76a59716d2SPrafulla Deuskarutility configures the adapter to receive and transmit Jumbo Frames. 77a59716d2SPrafulla DeuskarThe maximum MTU size for Jumbo Frames is 16114. 781ac88dc0SPrafulla Deuskar.Pp 795461e585SPrafulla DeuskarThis driver version supports VLANs. 801ac88dc0SPrafulla DeuskarThe 811ac88dc0SPrafulla Deuskar.Nm 821ac88dc0SPrafulla Deuskardriver supports the following media types: 83802a4af8SRuslan Ermilov.Bl -tag -width ".Cm 10baseT/UTP" 84802a4af8SRuslan Ermilov.It Cm autoselect 851ac88dc0SPrafulla DeuskarEnables auto-negotiation for speed and duplex. 86802a4af8SRuslan Ermilov.It Cm 10baseT/UTP 871ac88dc0SPrafulla DeuskarSets 10Mbps operation. 88a59716d2SPrafulla DeuskarUse the 89802a4af8SRuslan Ermilov.Cm mediaopt 90a59716d2SPrafulla Deuskaroption to select 91802a4af8SRuslan Ermilov.Cm full-duplex 92a59716d2SPrafulla Deuskarmode. 93802a4af8SRuslan Ermilov.It Cm 100baseTX 941ac88dc0SPrafulla DeuskarSets 100Mbps operation. 95a59716d2SPrafulla DeuskarUse the 96802a4af8SRuslan Ermilov.Cm mediaopt 97a59716d2SPrafulla Deuskaroption to select 98802a4af8SRuslan Ermilov.Cm full-duplex 99a59716d2SPrafulla Deuskarmode. 100802a4af8SRuslan Ermilov.It Cm 1000baseSX 1011ac88dc0SPrafulla DeuskarSets 1000Mbps operation. 1021ac88dc0SPrafulla DeuskarOnly 103802a4af8SRuslan Ermilov.Cm full-duplex 1041ac88dc0SPrafulla Deuskarmode is supported at this speed. 105802a4af8SRuslan Ermilov.It Cm 1000baseTX 1061ac88dc0SPrafulla DeuskarSets 1000Mbps operation. 1071ac88dc0SPrafulla DeuskarOnly 108802a4af8SRuslan Ermilov.Cm full-duplex 1091ac88dc0SPrafulla Deuskarmode is supported at this speed. 1101ac88dc0SPrafulla Deuskar.El 1111ac88dc0SPrafulla Deuskar.Pp 1121ac88dc0SPrafulla DeuskarThe 1131ac88dc0SPrafulla Deuskar.Nm 1141ac88dc0SPrafulla Deuskardriver supports the following media options: 115802a4af8SRuslan Ermilov.Bl -tag -width ".Cm full-duplex" 116802a4af8SRuslan Ermilov.It Cm full-duplex 117a59716d2SPrafulla DeuskarForces full-duplex operation 118802a4af8SRuslan Ermilov.It Cm half-duplex 119a59716d2SPrafulla DeuskarForces half-duplex operation. 1201ac88dc0SPrafulla Deuskar.El 1211ac88dc0SPrafulla Deuskar.Pp 122802a4af8SRuslan ErmilovOnly use 123802a4af8SRuslan Ermilov.Cm mediaopt 124802a4af8SRuslan Ermilovto set the driver to 125802a4af8SRuslan Ermilov.Cm full-duplex . 126802a4af8SRuslan ErmilovIf 127802a4af8SRuslan Ermilov.Cm mediaopt 128802a4af8SRuslan Ermilovis not specified, the driver defaults to 129802a4af8SRuslan Ermilov.Cm half-duplex . 130a59716d2SPrafulla Deuskar.Pp 1311ac88dc0SPrafulla DeuskarFor more information on configuring this device, see 1321ac88dc0SPrafulla Deuskar.Xr ifconfig 8 . 13391461de4SChristian Brueffer.Sh HARDWARE 13491461de4SChristian BruefferThe 13591461de4SChristian Brueffer.Nm 13691461de4SChristian Bruefferdriver supports Gigabit Ethernet adapters based on the Intel 1377d9c4565SChristian Brueffer82540, 82541ER, 82541PI, 82542, 82543, 82544, 82545, 82546, 82546EB, 138554d7f67SChristian Brueffer82546GB, 82547, 82571, 82572 and 82573 controller chips: 13991461de4SChristian Brueffer.Pp 14091461de4SChristian Brueffer.Bl -bullet -compact 14191461de4SChristian Brueffer.It 14291461de4SChristian BruefferIntel PRO/1000 CT Network Connection (82547) 14391461de4SChristian Brueffer.It 14491461de4SChristian BruefferIntel PRO/1000 F Server Adapter (82543) 14591461de4SChristian Brueffer.It 14691461de4SChristian BruefferIntel PRO/1000 Gigabit Server Adapter (82542) 14791461de4SChristian Brueffer.It 14891461de4SChristian BruefferIntel PRO/1000 GT Desktop Adapter (82541PI) 14991461de4SChristian Brueffer.It 15091461de4SChristian BruefferIntel PRO/1000 MF Dual Port Server Adapter (82546) 15191461de4SChristian Brueffer.It 15291461de4SChristian BruefferIntel PRO/1000 MF Server Adapter (82545) 15391461de4SChristian Brueffer.It 15491461de4SChristian BruefferIntel PRO/1000 MF Server Adapter (LX) (82545) 15591461de4SChristian Brueffer.It 15691461de4SChristian BruefferIntel PRO/1000 MT Desktop Adapter (82540) 15791461de4SChristian Brueffer.It 15891461de4SChristian BruefferIntel PRO/1000 MT Desktop Adapter (82541) 15991461de4SChristian Brueffer.It 16091461de4SChristian BruefferIntel PRO/1000 MT Dual Port Server Adapter (82546) 16191461de4SChristian Brueffer.It 16291461de4SChristian BruefferIntel PRO/1000 MT Quad Port Server Adapter (82546EB) 16391461de4SChristian Brueffer.It 16491461de4SChristian BruefferIntel PRO/1000 MT Server Adapter (82545) 16591461de4SChristian Brueffer.It 16691461de4SChristian BruefferIntel PRO/1000 T Desktop Adapter (82544) 16791461de4SChristian Brueffer.It 16891461de4SChristian BruefferIntel PRO/1000 T Server Adapter (82543) 16991461de4SChristian Brueffer.It 17091461de4SChristian BruefferIntel PRO/1000 XF Server Adapter (82544) 17191461de4SChristian Brueffer.It 17291461de4SChristian BruefferIntel PRO/1000 XT Server Adapter (82544) 17391461de4SChristian Brueffer.El 174a97b26d0SGleb Smirnoff.Sh LOADER TUNABLES 175a97b26d0SGleb SmirnoffTunables can be set at the 176a97b26d0SGleb Smirnoff.Xr loader 8 177a97b26d0SGleb Smirnoffprompt before booting the kernel or stored in 17878ad5421SRuslan Ermilov.Xr loader.conf 5 . 179a97b26d0SGleb Smirnoff.Bl -tag -width indent 180a97b26d0SGleb Smirnoff.It Va hw.em.rxd 181a97b26d0SGleb SmirnoffNumber of receive descriptors allocated by the driver. 182a97b26d0SGleb SmirnoffThe default value is 256. 183a97b26d0SGleb SmirnoffThe 82542 and 82543-based adapters can handle up to 256 descriptors, 184a97b26d0SGleb Smirnoffwhile others can have up to 4096. 185a97b26d0SGleb Smirnoff.It Va hw.em.txd 186a97b26d0SGleb SmirnoffNumber of transmit descriptors allocated by the driver. 187a97b26d0SGleb SmirnoffThe default value is 256. 188a97b26d0SGleb SmirnoffThe 82542 and 82543-based adapters can handle up to 256 descriptors, 189a97b26d0SGleb Smirnoffwhile others can have up to 4096. 190a97b26d0SGleb Smirnoff.It Va hw.em.rx_int_delay 191a97b26d0SGleb SmirnoffThis value delays the generation of receive interrupts in units of 192a97b26d0SGleb Smirnoff1.024 microseconds. 193a97b26d0SGleb SmirnoffThe default value is 0, since adapters may hang with this feature 194a97b26d0SGleb Smirnoffbeing enabled. 195a97b26d0SGleb Smirnoff.It Va hw.em.rx_abs_int_delay 196a97b26d0SGleb SmirnoffIf 197a97b26d0SGleb Smirnoff.Va hw.em.rx_int_delay 198a97b26d0SGleb Smirnoffis non-zero, this tunable limits the maximum delay in which a receive 199a97b26d0SGleb Smirnoffinterrupt is generated. 200a97b26d0SGleb Smirnoff.It Va hw.em.tx_int_delay 201a97b26d0SGleb SmirnoffThis value delays the generation of transmit interrupts in units of 202a97b26d0SGleb Smirnoff1.024 microseconds. 203a97b26d0SGleb SmirnoffThe default value is 64. 204a97b26d0SGleb Smirnoff.It Va hw.em.tx_abs_int_delay 205a97b26d0SGleb SmirnoffIf 206a97b26d0SGleb Smirnoff.Va hw.em.tx_int_delay 207a97b26d0SGleb Smirnoffis non-zero, this tunable limits the maximum delay in which a transmit 208a97b26d0SGleb Smirnoffinterrupt is generated. 209a97b26d0SGleb Smirnoff.El 2101ac88dc0SPrafulla Deuskar.Sh DIAGNOSTICS 2111ac88dc0SPrafulla Deuskar.Bl -diag 2121ac88dc0SPrafulla Deuskar.It "em%d: Unable to allocate bus resource: memory" 2131ac88dc0SPrafulla DeuskarA fatal initialization error has occurred. 2141ac88dc0SPrafulla Deuskar.It "em%d: Unable to allocate bus resource: interrupt" 2151ac88dc0SPrafulla DeuskarA fatal initialization error has occurred. 2161ac88dc0SPrafulla Deuskar.It "em%d: watchdog timeout -- resetting" 2171ac88dc0SPrafulla DeuskarThe device has stopped responding to the network, or there is a problem with 2181ac88dc0SPrafulla Deuskarthe network connection (cable). 2191ac88dc0SPrafulla Deuskar.El 2201ac88dc0SPrafulla Deuskar.Sh SUPPORT 221802a4af8SRuslan ErmilovFor general information and support, 222a59716d2SPrafulla Deuskargo to the Intel support website at: 223802a4af8SRuslan Ermilov.Pa http://support.intel.com . 2241ac88dc0SPrafulla Deuskar.Pp 2251ac88dc0SPrafulla DeuskarIf an issue is identified with the released source code on the supported kernel 2261ac88dc0SPrafulla Deuskarwith a supported adapter, email the specific information related to the 227802a4af8SRuslan Ermilovissue to 228802a4af8SRuslan Ermilov.Aq freebsdnic@mailbox.intel.com . 2291ac88dc0SPrafulla Deuskar.Sh SEE ALSO 230a25ecdffSChristian Brueffer.Xr altq 4 , 2311ac88dc0SPrafulla Deuskar.Xr arp 4 , 2321ac88dc0SPrafulla Deuskar.Xr netintro 4 , 233e4fe103dSPrafulla Deuskar.Xr ng_ether 4 , 234a6c410e7SChristian Brueffer.Xr polling 4 , 235999e589bSRuslan Ermilov.Xr vlan 4 , 2361ac88dc0SPrafulla Deuskar.Xr ifconfig 8 2371ac88dc0SPrafulla Deuskar.Sh HISTORY 2381ac88dc0SPrafulla DeuskarThe 2391ac88dc0SPrafulla Deuskar.Nm 2401ac88dc0SPrafulla Deuskardevice driver first appeared in 241a59716d2SPrafulla Deuskar.Fx 4.4 . 2421ac88dc0SPrafulla Deuskar.Sh AUTHORS 2431ac88dc0SPrafulla DeuskarThe 2441ac88dc0SPrafulla Deuskar.Nm 2451ac88dc0SPrafulla Deuskardriver was written by 2461ac88dc0SPrafulla Deuskar.An Intel Corporation Aq freebsdnic@mailbox.intel.com . 247af356871SYaroslav Tykhiy.Sh BUGS 248af356871SYaroslav TykhiyHardware-assisted VLAN processing is disabled by default. 249af356871SYaroslav TykhiyYou can enable it on an 250af356871SYaroslav Tykhiy.Nm 251af356871SYaroslav Tykhiyinterface using 2526e0ee35dSChristian Brueffer.Xr ifconfig 8 . 253