README revision 102242
1139804Simp$FreeBSD: head/sys/dev/em/README 100184 2002-07-16 16:55:03Z pdeuskar $ 226156SseFreeBSD* Driver for the Intel(R) PRO/1000 Family of Adapters 326156Sse============================================================ 426156Sse 526156SseJuly 2, 2002 626156Sse 726156Sse 826156SseContents 926156Sse======== 1026156Sse 1126156Sse- In This Release 1226156Sse- Supported Adapters 1326156Sse- Building and Installation 1426156Sse- Speed and Duplex Configuration 1526156Sse- Additional Configurations 1626156Sse- Known Limitations 1726156Sse- Support 1826156Sse- License 1926156Sse 2026156Sse 2126156SseIn This Release 2226156Sse=============== 2326156Sse 2426156SseThis file describes the FreeBSD* driver, version 1.3.x, for the Intel(R) 2526156SsePRO/1000 Family of Adapters. This driver has been developed for use with 2626156SseFreeBSD, version 4.6. As a new feature for this release, the driver is now 27116182Sobriencompiled by default into the FreeBSD 4.6 kernel. 28116182Sobrien 2936887SdfrThe driver supports Transmit/Receive Checksum Offload and Jumbo Frames on 30121482Sjhball but the 82542-based adapters. For specific adapters, refer to the 31121482SjhbSupported Adapters section below. 3241059Speter 3365822SjhbFor questions related to hardware requirements, refer to the documentation 34110860Salfredsupplied with your Intel PRO/1000 adapter. All hardware requirements listed 35178092Sjeffapply to use with FreeBSD. 3665822Sjhb 3741059Speter 3866698SjhbSupported Adapters 3966698Sjhb================== 4066698Sjhb 4166698SjhbThe following Intel network adapters are compatible with the drivers in this 42130128Sbderelease: 4374914Sjhb 4426156Sse Controller Adapter Name Board IDs 4567365Sjhb ---------- ------------ --------- 4666698Sjhb 4772759Sjhb 82542 PRO/1000 Gigabit Server Adapter 700262-xxx, 717037-xxx 4872237Sjhb 49139451Sjhb 82543 PRO/1000 F Server Adapter 738640-xxx, A38888-xxx, 50177181Sjhb A06512-xxx 5177582Stmm 5266698Sjhb 82543 PRO/1000 T Server Adapter A19845-xxx, A33948-xxx 5366698Sjhb 5466698Sjhb 82544 PRO/1000 XT Server Adapter A51580-xxx 5566698Sjhb 5667551Sjhb 82544 PRO/1000 XF Server Adapter A50484-xxx 5772237Sjhb 58121482Sjhb 82544 PRO/1000 T Desktop Adapter A62947-xxx 59121482Sjhb 60121482Sjhb 82540 PRO/1000 MT Desktop Adapter A78708-xxx 61121482Sjhb 6226156Sse 82545 PRO/1000 MT Server Adapter A92165-xxx 63151658Sjhb 64151658Sjhb 82545 PRO/1000 MF Server Adapter A91622-xxx 65151658Sjhb 66151658Sjhb 82545 PRO/1000 MF Server Adapter(LX) A91624-xxx 67151658Sjhb 68151658Sjhb 82546 PRO/1000 MT Dual Port Server Adapter A92111-xxx 69151658Sjhb 70151658Sjhb 82546 PRO/1000 MF Dual Port Server Adapter A91620-xxx 7172759Sjhb 7272759Sjhb 73151658SjhbTo verify your Intel adapter is supported, find the board ID number on the 74151658Sjhbadapter. Look for a label that has a barcode and a number in the format of 75151658Sjhb123456-001 (six digits hyphen three digits). Match this to the list of 76151658Sjhbnumbers above. 77151658Sjhb 78151658SjhbFor more information on how to identify your adapter, go to the Adapter & 79151658SjhbDriver ID Guide at: 80151658Sjhb 81151658Sjhb http://support.intel.com/support/network/adapter/pro100/21397.htm 82151658Sjhb 83128339SbdeFor the latest Intel network drivers for FreeBSD, see: 84173004Sjulian 8538244Sbde http://appsr.intel.com/scripts-df/support_intel.asp 8672237Sjhb 8772237Sjhb 88168850SnjlBuilding and Installation 89128331Sjhb========================= 90128331Sjhb 91128331SjhbNOTE: You must have kernel sources installed in order to compile the driver 92128339Sbde module. 93151658Sjhb 94151658Sjhb In the instructions below, x.x.x is the driver version as indicated in 95178092Sjeff the name of the driver tar. 96178092Sjeff 97128331Sjhb 98151658Sjhb1. Move the base driver tar file to the directory of your choice. For 99169320Spiso example, use /home/username/em or /usr/local/src/em. 100177940Sjhb 101177940Sjhb2. Untar/unzip the archive: 102177940Sjhb 103177940Sjhb tar xfz em-x.x.x.tar.gz 104169320Spiso 105169320Spiso3. To load the driver onto a running system: 106169320Spiso 107177940Sjhb cd em-x.x.x/modules 108151658Sjhb kldload ./if_em.ko 109169320Spiso 110151658Sjhb4. To assign an IP address to the interface, enter the following: 111169320Spiso 112169320Spiso ifconfig em<interface_num> <IP_address> 113169320Spiso 114169320Spiso5. Verify that the interface works. Enter the following, where <IP_address> 115169320Spiso is the IP address for another machine on the same subnet as the interface 116169320Spiso that is being tested: 117128339Sbde 118151658Sjhb ping <IP_address> 119128339Sbde 120128339Sbde6. If you want the driver to load automatically when the system is booted: 121165124Sjhb 12272237Sjhb cd em-x.x.x/modules 123151658Sjhb cp if_em.ko /modules 12465822Sjhb 12572237Sjhb Edit /boot/loader.conf, and add the following line: 12665822Sjhb 12772237Sjhb if_em_load="YES" 12878365Speter 12965822Sjhb OR 13072237Sjhb 13165822Sjhb compile the driver into the kernel (see item 7). 13265822Sjhb 13365822Sjhb 13465822Sjhb Edit /etc/rc.conf, and create the appropriate ifconfig_em<interface_num> 13565822Sjhb entry: 13665822Sjhb 13765822Sjhb ifconfig_em<interface_num>="<ifconfig_settings>" 13865822Sjhb 13965822Sjhb Example usage: 14065822Sjhb 14165822Sjhb ifconfig_em0="inet 192.168.10.1 netmask 255.255.255.0" 14265822Sjhb 14365822Sjhb NOTE: For assistance, see the ifconfig man page. 14465822Sjhb 14565822Sjhb7. If you want to compile the driver into the kernel, enter: 14678365Speter 14778365Speter cd em-x.x.x/src 14878365Speter cp if_em* /usr/src/sys/dev/em 14972237Sjhb cp Makefile /usr/src/sys/modules/em 15072237Sjhb 15172237Sjhb Edit the /usr/src/sys/conf/files.i386 file, and add the following line: 15265822Sjhb 15365822Sjhb dev/em/if_em_hw.c optional em 15465822Sjhb 15565822Sjhb Remove the following lines from the /usr/src/sys/conf/files.i386 file, if 15672237Sjhb they exist: 157151658Sjhb 15865822Sjhb /dev/em/if_em_fxhw.c optional em 15965822Sjhb /dev/em/if_em_phy.c optional em 16065822Sjhb 16165822Sjhb Compile and install the kernel. 16265822Sjhb 16372237Sjhb 164151658SjhbSpeed and Duplex Configuration 16572237Sjhb============================== 16672237Sjhb 167151658SjhbBy default, the adapter auto-negotiates the speed and duplex of the 16872237Sjhbconnection. If there is a specific need, the ifconfig utility can be used to 169151658Sjhbconfigure the speed and duplex settings on the adapter. Example usage: 17083366Sjulian 171151658Sjhb ifconfig em<interface_num> <IP_address> media 100baseTX mediaopt 17267551Sjhb full-duplex 173151658Sjhb 174151658Sjhb NOTE: Only use mediaopt to set the driver to full-duplex. If mediaopt is 17572237Sjhb not specified and you are not running at gigabit speed, the driver 176151658Sjhb defaults to half-duplex. 177151658Sjhb 178151658Sjhb 179151658SjhbThis driver supports the following media type options: 180151658Sjhb 181105354Srobert autoselect - Enables auto-negotiation for speed and duplex. 182151658Sjhb 183173004Sjulian 10baseT/UTP - Sets speed to 10 Mbps. Use the ifconfig mediaopt 184170307Sjeff option to select full-duplex mode. 185151658Sjhb 186170307Sjeff 100baseTX - Sets speed to 100 Mbps. Use the ifconfig mediaopt 187151658Sjhb option to select full-duplex mode. 188151658Sjhb 189151658Sjhb 1000baseTX - Sets speed to 1000 Mbps. In this case, the driver 190151658Sjhb supports only full-duplex mode. 191151658Sjhb 192151658Sjhb 1000baseSX - Sets speed to 1000 Mbps. In this case, the driver 193151658Sjhb supports only full-duplex mode. 194151658Sjhb 195151658SjhbFor more information on the ifconfig utility, see the ifconfig man page. 196151658Sjhb 197151658Sjhb 198151658SjhbAdditional Configurations 199151658Sjhb========================= 200151658Sjhb 201151658Sjhb Jumbo Frames 202151658Sjhb ------------ 203137267Sjhb 204151658Sjhb To enable Jumbo Frames, use the ifconfig utility to increase the MTU 205151658Sjhb beyond 1500 bytes. 206151658Sjhb 207151658Sjhb NOTE: Only enable Jumbo Frames if your network infrastructure supports 208151658Sjhb them. 209151658Sjhb 210151658Sjhb The MTU range for Jumbo Frames is 1500 to 16114. For example, enter the 211151658Sjhb following: 212151658Sjhb 213137267Sjhb ifconfig em<interface_num> mtu 9000 214137267Sjhb 215137267Sjhb VLANs 216151658Sjhb ----- 217137267Sjhb 218151658Sjhb To enable VLANs in the kernel, modify the config file as follows: 219151658Sjhb 220151658Sjhb pseudo-device vlan <num_VLANs> 221151658Sjhb 222151658Sjhb Then, recompile the kernel and reboot. 223151658Sjhb 224151658Sjhb To see the VLAN device entries, use ifconfig. 225137267Sjhb 226151658Sjhb To attach a VLAN to the driver enter the following: 227151658Sjhb 228151658Sjhb ifconfig vlan0 inet 10.0.0.1 netmask 255.255.255.0 vlan 1 vlandev 229151658Sjhb em0 mtu 1500 up 230151658Sjhb 231151658Sjhb Also, bring the driver up by entering: 232151658Sjhb 233151658Sjhb ifconfig em0 up 234151658Sjhb 23572237Sjhb 236151658SjhbKnown Limitations 23772237Sjhb================= 238151658Sjhb 239151658SjhbThere are known performance problems with this driver when running UDP 240151658Sjhbtraffic with Jumbo Frames. Intel recommends not using Jumbo Frames for UDP 241151658Sjhbtraffic. 242151658Sjhb 243151658Sjhb 244151658SjhbSupport 245151658Sjhb======= 24672237Sjhb 24772237SjhbFor general information and support, go to the Intel support website at: 24872237Sjhb 249178092Sjeff http://support.intel.com 250177940Sjhb 251177940SjhbIf an issue is identified with the released source code on the supported 252177940Sjhbkernel with a supported adapter, email the specific information related to 253169320Spisothe issue to freebsdnic@mailbox.intel.com. 254169320Spiso 255169320Spiso 25672237SjhbLicense 257169320Spiso======= 258169320Spiso 259169320SpisoThis software program is released under the terms of a license agreement 260169320Spisobetween you ('Licensee') and Intel. Do not use or load this software or any 261169320Spisoassociated materials (collectively, the 'Software') until you have carefully 262177940Sjhbread the full terms and conditions of the LICENSE located in this software 263177940Sjhbpackage. By loading or using the Software, you agree to the terms of this 264177940SjhbAgreement. If you do not agree with the terms of this Agreement, do not 265177181Sjhbinstall or use the Software. 266169320Spiso 267178092Sjeff* Other names and brands may be claimed as the property of others. 268177181Sjhb