1*75eba5b6SRobert Mustacchi$FreeBSD$ 2*75eba5b6SRobert MustacchiFreeBSD* Driver for Intel Network Connection 3*75eba5b6SRobert Mustacchi============================================= 4*75eba5b6SRobert Mustacchi 5*75eba5b6SRobert MustacchiMay 30, 2007 6*75eba5b6SRobert Mustacchi 7*75eba5b6SRobert Mustacchi 8*75eba5b6SRobert MustacchiContents 9*75eba5b6SRobert Mustacchi======== 10*75eba5b6SRobert Mustacchi 11*75eba5b6SRobert Mustacchi- Overview 12*75eba5b6SRobert Mustacchi- Identifying Your Adapter 13*75eba5b6SRobert Mustacchi- Building and Installation 14*75eba5b6SRobert Mustacchi- Speed and Duplex Configuration 15*75eba5b6SRobert Mustacchi- Additional Configurations 16*75eba5b6SRobert Mustacchi- Known Limitations 17*75eba5b6SRobert Mustacchi- Support 18*75eba5b6SRobert Mustacchi- License 19*75eba5b6SRobert Mustacchi 20*75eba5b6SRobert Mustacchi 21*75eba5b6SRobert MustacchiOverview 22*75eba5b6SRobert Mustacchi======== 23*75eba5b6SRobert Mustacchi 24*75eba5b6SRobert MustacchiThis file describes the FreeBSD* driver for Intel Network Connection. 25*75eba5b6SRobert MustacchiThis driver has been developed for use with FreeBSD, Release 7.x. 26*75eba5b6SRobert Mustacchi 27*75eba5b6SRobert MustacchiFor questions related to hardware requirements, refer to the documentation 28*75eba5b6SRobert Mustacchisupplied with your Gigabit adapter. All hardware requirements listed 29*75eba5b6SRobert Mustacchiapply to use with FreeBSD. 30*75eba5b6SRobert Mustacchi 31*75eba5b6SRobert Mustacchi 32*75eba5b6SRobert MustacchiIdentifying Your Adapter 33*75eba5b6SRobert Mustacchi======================== 34*75eba5b6SRobert Mustacchi 35*75eba5b6SRobert MustacchiFor information on how to identify your adapter, go to the Adapter & 36*75eba5b6SRobert MustacchiDriver ID Guide at: 37*75eba5b6SRobert Mustacchi 38*75eba5b6SRobert Mustacchihttp://support.intel.com/support/network/sb/cs-012904.htm 39*75eba5b6SRobert Mustacchi 40*75eba5b6SRobert Mustacchi 41*75eba5b6SRobert MustacchiFor the latest Intel network drivers for FreeBSD, see: 42*75eba5b6SRobert Mustacchi 43*75eba5b6SRobert Mustacchihttp://downloadfinder.intel.com/scripts-df-external/support_intel.aspx 44*75eba5b6SRobert Mustacchi 45*75eba5b6SRobert Mustacchi 46*75eba5b6SRobert MustacchiNOTE: Mobile adapters are not fully supported. 47*75eba5b6SRobert MustacchiNOTE: The Intel(R) 82562v 10/100 Network Connection only provides 10/100 48*75eba5b6SRobert Mustacchisupport. 49*75eba5b6SRobert Mustacchi 50*75eba5b6SRobert MustacchiBuilding and Installation 51*75eba5b6SRobert Mustacchi========================= 52*75eba5b6SRobert Mustacchi 53*75eba5b6SRobert MustacchiNOTE: The driver can be installed as a dynamic loadable kernel module or 54*75eba5b6SRobert Mustacchi compiled into the kernel. You must have kernel sources installed in 55*75eba5b6SRobert Mustacchi order to compile the driver module. 56*75eba5b6SRobert Mustacchi 57*75eba5b6SRobert MustacchiIn the instructions below, x.x.x is the driver version as indicated in the 58*75eba5b6SRobert Mustacchiname of the driver tar file. 59*75eba5b6SRobert Mustacchi 60*75eba5b6SRobert Mustacchi1. Move the base driver tar file to the directory of your choice. For 61*75eba5b6SRobert Mustacchi example, use /home/username/em or /usr/local/src/em. 62*75eba5b6SRobert Mustacchi 63*75eba5b6SRobert Mustacchi2. Untar/unzip the archive: 64*75eba5b6SRobert Mustacchi 65*75eba5b6SRobert Mustacchi tar xzvf em-x.x.x.tar.gz 66*75eba5b6SRobert Mustacchi 67*75eba5b6SRobert Mustacchi This will create an em-x.x.x directory. 68*75eba5b6SRobert Mustacchi 69*75eba5b6SRobert Mustacchi3. To create a loadable module, perform the following steps. 70*75eba5b6SRobert Mustacchi NOTE: To compile the driver into the kernel, go directly to step 4. 71*75eba5b6SRobert Mustacchi 72*75eba5b6SRobert Mustacchi a. To compile the module 73*75eba5b6SRobert Mustacchi 74*75eba5b6SRobert Mustacchi cd em-x.x.x 75*75eba5b6SRobert Mustacchi make 76*75eba5b6SRobert Mustacchi 77*75eba5b6SRobert Mustacchi b. To install the compiled module to the system directory: 78*75eba5b6SRobert Mustacchi 79*75eba5b6SRobert Mustacchi make install 80*75eba5b6SRobert Mustacchi 81*75eba5b6SRobert Mustacchi c. If you want the driver to load automatically when the system is booted: 82*75eba5b6SRobert Mustacchi 83*75eba5b6SRobert Mustacchi 1. Edit /boot/loader.conf, and add the following line: 84*75eba5b6SRobert Mustacchi 85*75eba5b6SRobert Mustacchi if_em_load="YES" 86*75eba5b6SRobert Mustacchi 87*75eba5b6SRobert Mustacchi4. To compile the driver into the kernel, enter: 88*75eba5b6SRobert Mustacchi 89*75eba5b6SRobert Mustacchi cd em-x.x.x/src 90*75eba5b6SRobert Mustacchi cp *.[ch] /usr/src/sys/dev/em 91*75eba5b6SRobert Mustacchi 92*75eba5b6SRobert Mustacchi Edit the kernel configuration file (i.e., GENERIC or MYKERNEL) in 93*75eba5b6SRobert Mustacchi /usr/src/sys/i386/conf, and ensure the following line is present: 94*75eba5b6SRobert Mustacchi 95*75eba5b6SRobert Mustacchi device em 96*75eba5b6SRobert Mustacchi 97*75eba5b6SRobert Mustacchi Compile and install the kernel. The system must be rebooted for the 98*75eba5b6SRobert Mustacchi kernel updates to take effect. For additional information on compiling 99*75eba5b6SRobert Mustacchi the kernel, consult the FreeBSD operating system documentation. 100*75eba5b6SRobert Mustacchi 101*75eba5b6SRobert Mustacchi5. To assign an IP address to the interface, enter the following: 102*75eba5b6SRobert Mustacchi 103*75eba5b6SRobert Mustacchi ifconfig em<interface_num> <IP_address> 104*75eba5b6SRobert Mustacchi 105*75eba5b6SRobert Mustacchi6. Verify that the interface works. Enter the following, where <IP_address> 106*75eba5b6SRobert Mustacchi is the IP address for another machine on the same subnet as the interface 107*75eba5b6SRobert Mustacchi that is being tested: 108*75eba5b6SRobert Mustacchi 109*75eba5b6SRobert Mustacchi ping <IP_address> 110*75eba5b6SRobert Mustacchi 111*75eba5b6SRobert Mustacchi7. To configure the IP address to remain after reboot, edit /etc/rc.conf, 112*75eba5b6SRobert Mustacchi and create the appropriate ifconfig_em<interface_num>entry: 113*75eba5b6SRobert Mustacchi 114*75eba5b6SRobert Mustacchi ifconfig_em<interface_num>="<ifconfig_settings>" 115*75eba5b6SRobert Mustacchi 116*75eba5b6SRobert Mustacchi Example usage: 117*75eba5b6SRobert Mustacchi 118*75eba5b6SRobert Mustacchi ifconfig_em0="inet 192.168.10.1 netmask 255.255.255.0" 119*75eba5b6SRobert Mustacchi 120*75eba5b6SRobert Mustacchi NOTE: For assistance, see the ifconfig man page. 121*75eba5b6SRobert Mustacchi 122*75eba5b6SRobert Mustacchi 123*75eba5b6SRobert MustacchiSpeed and Duplex Configuration 124*75eba5b6SRobert Mustacchi============================== 125*75eba5b6SRobert Mustacchi 126*75eba5b6SRobert MustacchiBy default, the adapter auto-negotiates the speed and duplex of the 127*75eba5b6SRobert Mustacchiconnection. If there is a specific need, the ifconfig utility can be used to 128*75eba5b6SRobert Mustacchiconfigure the speed and duplex settings on the adapter. Example usage: 129*75eba5b6SRobert Mustacchi 130*75eba5b6SRobert Mustacchi ifconfig em<interface_num> <IP_address> media 100baseTX mediaopt 131*75eba5b6SRobert Mustacchi full-duplex 132*75eba5b6SRobert Mustacchi 133*75eba5b6SRobert Mustacchi NOTE: Only use mediaopt to set the driver to full-duplex. If mediaopt is 134*75eba5b6SRobert Mustacchi not specified and you are not running at gigabit speed, the driver 135*75eba5b6SRobert Mustacchi defaults to half-duplex. 136*75eba5b6SRobert Mustacchi 137*75eba5b6SRobert MustacchiIf the interface is currently forced to 100 full duplex, in order to change 138*75eba5b6SRobert Mustacchito half duplex you must use this command: 139*75eba5b6SRobert Mustacchi 140*75eba5b6SRobert Mustacchi ifconfig em<interface_num> <IP_address> media 100baseTX -mediaopt 141*75eba5b6SRobert Mustacchi full-duplex 142*75eba5b6SRobert Mustacchi 143*75eba5b6SRobert Mustacchi 144*75eba5b6SRobert MustacchiThis driver supports the following media type options: 145*75eba5b6SRobert Mustacchi 146*75eba5b6SRobert Mustacchi autoselect - Enables auto-negotiation for speed and duplex. 147*75eba5b6SRobert Mustacchi 148*75eba5b6SRobert Mustacchi 10baseT/UTP - Sets speed to 10 Mbps. Use the ifconfig mediaopt 149*75eba5b6SRobert Mustacchi option to select full-duplex mode. 150*75eba5b6SRobert Mustacchi 151*75eba5b6SRobert Mustacchi 100baseTX - Sets speed to 100 Mbps. Use the ifconfig mediaopt 152*75eba5b6SRobert Mustacchi option to select full-duplex mode. 153*75eba5b6SRobert Mustacchi 154*75eba5b6SRobert Mustacchi 1000baseTX - Sets speed to 1000 Mbps. In this case, the driver 155*75eba5b6SRobert Mustacchi supports only full-duplex mode. 156*75eba5b6SRobert Mustacchi 157*75eba5b6SRobert Mustacchi 1000baseSX - Sets speed to 1000 Mbps. In this case, the driver 158*75eba5b6SRobert Mustacchi supports only full-duplex mode. 159*75eba5b6SRobert Mustacchi 160*75eba5b6SRobert MustacchiFor more information on the ifconfig utility, see the ifconfig man page. 161*75eba5b6SRobert Mustacchi 162*75eba5b6SRobert Mustacchi 163*75eba5b6SRobert MustacchiAdditional Configurations 164*75eba5b6SRobert Mustacchi========================= 165*75eba5b6SRobert Mustacchi 166*75eba5b6SRobert MustacchiThe driver supports Transmit/Receive Checksum Offload and Jumbo Frames on 167*75eba5b6SRobert Mustacchiall but the 82542-based adapters. For specific adapters, refer to the 168*75eba5b6SRobert MustacchiIdentifying Your Adapter section. 169*75eba5b6SRobert Mustacchi 170*75eba5b6SRobert Mustacchi Jumbo Frames 171*75eba5b6SRobert Mustacchi ------------ 172*75eba5b6SRobert Mustacchi To enable Jumbo Frames, use the ifconfig utility to set the Maximum 173*75eba5b6SRobert Mustacchi Transport Unit (MTU) frame size above its default of 1500 bytes. 174*75eba5b6SRobert Mustacchi 175*75eba5b6SRobert Mustacchi The Jumbo Frames MTU range for Intel Adapters is 1500 to 16110. To modify 176*75eba5b6SRobert Mustacchi the setting, enter the following: 177*75eba5b6SRobert Mustacchi 178*75eba5b6SRobert Mustacchi ifconfig em<interface_num> <hostname or IP address> mtu 9000 179*75eba5b6SRobert Mustacchi 180*75eba5b6SRobert Mustacchi To confirm the MTU used between two specific devices, use: 181*75eba5b6SRobert Mustacchi 182*75eba5b6SRobert Mustacchi route get <destination_IP_address> 183*75eba5b6SRobert Mustacchi 184*75eba5b6SRobert Mustacchi Notes: 185*75eba5b6SRobert Mustacchi 186*75eba5b6SRobert Mustacchi - Only enable Jumbo Frames if your network infrastructure supports them. 187*75eba5b6SRobert Mustacchi 188*75eba5b6SRobert Mustacchi - To enable Jumbo Frames, increase the MTU size on the interface beyond 189*75eba5b6SRobert Mustacchi 1500. 190*75eba5b6SRobert Mustacchi 191*75eba5b6SRobert Mustacchi - The Jumbo Frames setting on the switch must be set to at least 22 bytes 192*75eba5b6SRobert Mustacchi larger than that of the MTU. 193*75eba5b6SRobert Mustacchi 194*75eba5b6SRobert Mustacchi - The maximum MTU setting for Jumbo Frames is 16110. This value coincides 195*75eba5b6SRobert Mustacchi with the maximum Jumbo Frames size of 16128. 196*75eba5b6SRobert Mustacchi 197*75eba5b6SRobert Mustacchi - Some Intel gigabit adapters that support Jumbo Frames have a frame size 198*75eba5b6SRobert Mustacchi limit of 9238 bytes, with a corresponding MTU size limit of 9216 bytes. 199*75eba5b6SRobert Mustacchi The adapters with this limitation are based on the Intel(R) 82571EB, 200*75eba5b6SRobert Mustacchi 82572EI, 82573L, 82566, 82562, and 80003ES2LAN controller. These 201*75eba5b6SRobert Mustacchi correspond to the following product names: 202*75eba5b6SRobert Mustacchi Intel(R) PRO/1000 PT Server Adapter 203*75eba5b6SRobert Mustacchi Intel(R) PRO/1000 PT Desktop Adapter 204*75eba5b6SRobert Mustacchi Intel(R) PRO/1000 PT Network Connection 205*75eba5b6SRobert Mustacchi Intel(R) PRO/1000 PT Dual Port Server Adapter 206*75eba5b6SRobert Mustacchi Intel(R) PRO/1000 PT Dual Port Network Connection 207*75eba5b6SRobert Mustacchi Intel(R) PRO/1000 PT Quad Port Server Adapter 208*75eba5b6SRobert Mustacchi Intel(R) PRO/1000 PF Quad Port Server Adapter 209*75eba5b6SRobert Mustacchi Intel(R) PRO/1000 PF Server Adapter 210*75eba5b6SRobert Mustacchi Intel(R) PRO/1000 PF Network Connection 211*75eba5b6SRobert Mustacchi Intel(R) PRO/1000 PF Dual Port Server Adapter 212*75eba5b6SRobert Mustacchi Intel(R) PRO/1000 PB Server Connection 213*75eba5b6SRobert Mustacchi Intel(R) PRO/1000 PL Network Connection 214*75eba5b6SRobert Mustacchi Intel(R) PRO/1000 EB Network Connection with I/O Acceleration 215*75eba5b6SRobert Mustacchi Intel(R) PRO/1000 EB Backplane Connection with I/O Acceleration 216*75eba5b6SRobert Mustacchi Intel(R) 82566DM-2 Gigabit Network Connection 217*75eba5b6SRobert Mustacchi 218*75eba5b6SRobert Mustacchi - Adapters based on the Intel(R) 82542 and 82573V/E controller do not 219*75eba5b6SRobert Mustacchi support Jumbo Frames. These correspond to the following product names: 220*75eba5b6SRobert Mustacchi Intel(R) PRO/1000 Gigabit Server Adapter 221*75eba5b6SRobert Mustacchi Intel(R) PRO/1000 PM Network Connection 222*75eba5b6SRobert Mustacchi 223*75eba5b6SRobert Mustacchi - Using Jumbo Frames at 10 or 100 Mbps may result in poor performance or 224*75eba5b6SRobert Mustacchi loss of link. 225*75eba5b6SRobert Mustacchi 226*75eba5b6SRobert Mustacchi - The following adapters do not support Jumbo Frames: 227*75eba5b6SRobert Mustacchi Intel(R) 82562V 10/100 Network Connection 228*75eba5b6SRobert Mustacchi Intel(R) 82566DM Gigabit Network Connection 229*75eba5b6SRobert Mustacchi Intel(R) 82566DC Gigabit Network Connection 230*75eba5b6SRobert Mustacchi Intel(R) 82566MM Gigabit Network Connection 231*75eba5b6SRobert Mustacchi Intel(R) 82566MC Gigabit Network Connection 232*75eba5b6SRobert Mustacchi Intel(R) 82562GT 10/100 Network Connection 233*75eba5b6SRobert Mustacchi Intel(R) 82562G 10/100 Network Connection 234*75eba5b6SRobert Mustacchi Intel(R) 82566DC-2 Gigabit Network Connection 235*75eba5b6SRobert Mustacchi Intel(R) 82562V-2 10/100 Network Connection 236*75eba5b6SRobert Mustacchi Intel(R) 82562G-2 10/100 Network Connection 237*75eba5b6SRobert Mustacchi Intel(R) 82562GT-2 10/100 Network Connection 238*75eba5b6SRobert Mustacchi 239*75eba5b6SRobert Mustacchi VLANs 240*75eba5b6SRobert Mustacchi ----- 241*75eba5b6SRobert Mustacchi To create a new VLAN interface: 242*75eba5b6SRobert Mustacchi 243*75eba5b6SRobert Mustacchi ifconfig <vlan_name> create 244*75eba5b6SRobert Mustacchi 245*75eba5b6SRobert Mustacchi To associate the VLAN interface with a physical interface and 246*75eba5b6SRobert Mustacchi assign a VLAN ID, IP address, and netmask: 247*75eba5b6SRobert Mustacchi 248*75eba5b6SRobert Mustacchi ifconfig <vlan_name> <ip_address> netmask <subnet_mask> vlan 249*75eba5b6SRobert Mustacchi <vlan_id> vlandev <physical_interface> 250*75eba5b6SRobert Mustacchi 251*75eba5b6SRobert Mustacchi Example: 252*75eba5b6SRobert Mustacchi 253*75eba5b6SRobert Mustacchi ifconfig vlan10 10.0.0.1 netmask 255.255.255.0 vlan 10 vlandev em0 254*75eba5b6SRobert Mustacchi 255*75eba5b6SRobert Mustacchi In this example, all packets will be marked on egress with 802.1Q VLAN 256*75eba5b6SRobert Mustacchi tags, specifying a VLAN ID of 10. 257*75eba5b6SRobert Mustacchi 258*75eba5b6SRobert Mustacchi To remove a VLAN interface: 259*75eba5b6SRobert Mustacchi 260*75eba5b6SRobert Mustacchi Intel Network Connection ifconfig <vlan_name> destroy 261*75eba5b6SRobert Mustacchi 262*75eba5b6SRobert Mustacchi 263*75eba5b6SRobert Mustacchi Polling 264*75eba5b6SRobert Mustacchi ------- 265*75eba5b6SRobert Mustacchi 266*75eba5b6SRobert Mustacchi To enable polling in the driver, add the following options to the kernel 267*75eba5b6SRobert Mustacchi configuration, and then recompile the kernel: 268*75eba5b6SRobert Mustacchi 269*75eba5b6SRobert Mustacchi options DEVICE_POLLING 270*75eba5b6SRobert Mustacchi options HZ=1000 271*75eba5b6SRobert Mustacchi 272*75eba5b6SRobert Mustacchi At runtime use: 273*75eba5b6SRobert Mustacchi ifconfig emX polling (to turn polling on) 274*75eba5b6SRobert Mustacchi and: 275*75eba5b6SRobert Mustacchi ifconfig emX -polling (to turn it off) 276*75eba5b6SRobert Mustacchi 277*75eba5b6SRobert Mustacchi 278*75eba5b6SRobert Mustacchi Checksum Offload 279*75eba5b6SRobert Mustacchi ---------------- 280*75eba5b6SRobert Mustacchi Checksum offloading is not supported on 82542 Gigabit adapters. 281*75eba5b6SRobert Mustacchi 282*75eba5b6SRobert Mustacchi Checksum offloading supports both TCP and UDP packets and is 283*75eba5b6SRobert Mustacchi supported for both transmit and receive. 284*75eba5b6SRobert Mustacchi 285*75eba5b6SRobert Mustacchi Checksum offloading can be enabled or disabled using ifconfig. 286*75eba5b6SRobert Mustacchi Both transmit and receive offloading will be either enabled or 287*75eba5b6SRobert Mustacchi disabled together. You cannot enable/disable one without the other. 288*75eba5b6SRobert Mustacchi 289*75eba5b6SRobert Mustacchi To enable checksum offloading: 290*75eba5b6SRobert Mustacchi 291*75eba5b6SRobert Mustacchi ifconfig <interface_num> rxcsum 292*75eba5b6SRobert Mustacchi 293*75eba5b6SRobert Mustacchi To disable checksum offloading: 294*75eba5b6SRobert Mustacchi 295*75eba5b6SRobert Mustacchi ifconfig <interface_num> -rxcsum 296*75eba5b6SRobert Mustacchi 297*75eba5b6SRobert Mustacchi To confirm the current setting: 298*75eba5b6SRobert Mustacchi 299*75eba5b6SRobert Mustacchi ifconfig <interface_num> 300*75eba5b6SRobert Mustacchi 301*75eba5b6SRobert Mustacchi Look for the presence or absence of the following line: 302*75eba5b6SRobert Mustacchi 303*75eba5b6SRobert Mustacchi options=3 <RXCSUM,TXCSUM> 304*75eba5b6SRobert Mustacchi 305*75eba5b6SRobert Mustacchi See the ifconfig man page for further information. 306*75eba5b6SRobert Mustacchi 307*75eba5b6SRobert Mustacchi 308*75eba5b6SRobert Mustacchi TSO 309*75eba5b6SRobert Mustacchi --- 310*75eba5b6SRobert Mustacchi The FreeBSD driver offers support for TSO (TCP Segmentation Offload). 311*75eba5b6SRobert Mustacchi 312*75eba5b6SRobert Mustacchi You can enable/disable it in two ways/places: 313*75eba5b6SRobert Mustacchi 314*75eba5b6SRobert Mustacchi - sysctl net.inet.tcp.tso=0 (or 1 to enable it) 315*75eba5b6SRobert Mustacchi 316*75eba5b6SRobert Mustacchi Doing this disables TSO in the stack and will affect all adapters. 317*75eba5b6SRobert Mustacchi 318*75eba5b6SRobert Mustacchi - ifconfig emX -tso 319*75eba5b6SRobert Mustacchi 320*75eba5b6SRobert Mustacchi Doing this will disable TSO only for this adapter. 321*75eba5b6SRobert Mustacchi 322*75eba5b6SRobert Mustacchi To enable: 323*75eba5b6SRobert Mustacchi 324*75eba5b6SRobert Mustacchi - ifconfig emX tso 325*75eba5b6SRobert Mustacchi 326*75eba5b6SRobert Mustacchi NOTES: By default only PCI-Express adapters are ENABLED to do TSO. Others 327*75eba5b6SRobert Mustacchi can be enabled by the user at their own risk 328*75eba5b6SRobert Mustacchi TSO is not supported on 82547 and 82544-based adapters, as well as older adapters. 329*75eba5b6SRobert Mustacchi 330*75eba5b6SRobert Mustacchi 331*75eba5b6SRobert MustacchiKnown Limitations 332*75eba5b6SRobert Mustacchi================= 333*75eba5b6SRobert Mustacchi 334*75eba5b6SRobert Mustacchi Detected Tx Unit Hang in Quad Port Adapters 335*75eba5b6SRobert Mustacchi ------------------------------------------- 336*75eba5b6SRobert Mustacchi 337*75eba5b6SRobert Mustacchi In some cases ports 3 and 4 wont pass traffic. Ports 1 and 2 don't show 338*75eba5b6SRobert Mustacchi any errors and will pass traffic. 339*75eba5b6SRobert Mustacchi 340*75eba5b6SRobert Mustacchi This issue MAY be resolved by updating to the latest BIOS. You can 341*75eba5b6SRobert Mustacchi check your system's BIOS by downloading the Linux Firmware Developer Kit 342*75eba5b6SRobert Mustacchi that can be obtained at http://www.linuxfirmwarekit.org/ 343*75eba5b6SRobert Mustacchi 344*75eba5b6SRobert Mustacchi 345*75eba5b6SRobert Mustacchi There are known performance issues with this driver when running UDP traffic 346*75eba5b6SRobert Mustacchi with Jumbo Frames. 347*75eba5b6SRobert Mustacchi ---------------------------------------------------------------------------- 348*75eba5b6SRobert Mustacchi 349*75eba5b6SRobert Mustacchi 82541/82547 can't link or is slow to link with some link partners 350*75eba5b6SRobert Mustacchi ----------------------------------------------------------------- 351*75eba5b6SRobert Mustacchi 352*75eba5b6SRobert Mustacchi There is a known compatibility issue where time to link is slow or link is not 353*75eba5b6SRobert Mustacchi established between 82541/82547 controllers and some switches. Known switches 354*75eba5b6SRobert Mustacchi include: 355*75eba5b6SRobert Mustacchi Planex FXG-08TE 356*75eba5b6SRobert Mustacchi I-O Data ETG-SH8 357*75eba5b6SRobert Mustacchi Netgear GS105v3 358*75eba5b6SRobert Mustacchi 359*75eba5b6SRobert Mustacchi The driver can be compiled with the following changes: 360*75eba5b6SRobert Mustacchi 361*75eba5b6SRobert Mustacchi Edit ./em.x.x.x/src/if_em.h to change the #define EM_MASTER_SLAVE 362*75eba5b6SRobert Mustacchi For example, change from: 363*75eba5b6SRobert Mustacchi 364*75eba5b6SRobert Mustacchi #define EM_MASTER_SLAVE e1000_ms_hw_default 365*75eba5b6SRobert Mustacchi to: 366*75eba5b6SRobert Mustacchi #define EM_MASTER_SLAVE 2 367*75eba5b6SRobert Mustacchi 368*75eba5b6SRobert Mustacchi Use one of the following options: 369*75eba5b6SRobert Mustacchi 1 = Master mode 370*75eba5b6SRobert Mustacchi 2 = Slave mode 371*75eba5b6SRobert Mustacchi 3 = Auto master/slave 372*75eba5b6SRobert Mustacchi Setting 2 is recommended. 373*75eba5b6SRobert Mustacchi 374*75eba5b6SRobert Mustacchi Recompile the module: 375*75eba5b6SRobert Mustacchi a. To compile the module 376*75eba5b6SRobert Mustacchi cd em-x.x.x 377*75eba5b6SRobert Mustacchi make clean 378*75eba5b6SRobert Mustacchi make 379*75eba5b6SRobert Mustacchi 380*75eba5b6SRobert Mustacchi b. To install the compiled module in system directory: 381*75eba5b6SRobert Mustacchi make install 382*75eba5b6SRobert Mustacchi 383*75eba5b6SRobert Mustacchi 384*75eba5b6SRobert MustacchiSupport 385*75eba5b6SRobert Mustacchi======= 386*75eba5b6SRobert Mustacchi 387*75eba5b6SRobert MustacchiFor general information and support, go to the Intel support website at: 388*75eba5b6SRobert Mustacchi 389*75eba5b6SRobert Mustacchi http://support.intel.com 390*75eba5b6SRobert Mustacchi 391*75eba5b6SRobert MustacchiIf an issue is identified, support is through email only at: 392*75eba5b6SRobert Mustacchifreebsd@intel.com 393*75eba5b6SRobert Mustacchi 394*75eba5b6SRobert Mustacchi 395*75eba5b6SRobert MustacchiLicense 396*75eba5b6SRobert Mustacchi======= 397*75eba5b6SRobert Mustacchi 398*75eba5b6SRobert MustacchiThis software program is released under the terms of a license agreement 399*75eba5b6SRobert Mustacchibetween you ('Licensee') and Intel. Do not use or load this software or any 400*75eba5b6SRobert Mustacchiassociated materials (collectively, the 'Software') until you have carefully 401*75eba5b6SRobert Mustacchiread the full terms and conditions of the LICENSE located in this software 402*75eba5b6SRobert Mustacchipackage. By loading or using the Software, you agree to the terms of this 403*75eba5b6SRobert MustacchiAgreement. If you do not agree with the terms of this Agreement, do not 404*75eba5b6SRobert Mustacchiinstall or use the Software. 405*75eba5b6SRobert Mustacchi 406*75eba5b6SRobert Mustacchi* Other names and brands may be claimed as the property of others. 407