README revision 108229
1$FreeBSD: head/sys/dev/em/README 108229 2002-12-23 19:11:23Z pdeuskar $ 2FreeBSD* Driver for the Intel(R) PRO/1000 Family of Adapters 3============================================================ 4 5November 12, 2002 6 7 8Contents 9======== 10 11- In This Release 12- Supported Adapters 13- Building and Installation 14- Speed and Duplex Configuration 15- Additional Configurations 16- Known Limitations 17- Support 18- License 19 20 21In This Release 22=============== 23 24This file describes the FreeBSD* driver, version 1.4.x, for the Intel(R) 25PRO/1000 Family of Adapters. This driver has been developed for use with 26FreeBSD, version 4.7. As a new feature for this release, the driver is now 27compiled by default into the FreeBSD 4.7 kernel. 28 29The driver supports Transmit/Receive Checksum Offload and Jumbo Frames on 30all but the 82542-based adapters. For specific adapters, refer to the 31Supported Adapters section below. 32 33For questions related to hardware requirements, refer to the documentation 34supplied with your Intel PRO/1000 adapter. All hardware requirements listed 35apply to use with FreeBSD. 36 37 38Supported Adapters 39================== 40 41The following Intel network adapters are compatible with the drivers in this 42release: 43 44 Controller Adapter Name Board IDs 45 ---------- ------------ --------- 46 47 82542 PRO/1000 Gigabit Server Adapter 700262-xxx, 717037-xxx 48 49 82543 PRO/1000 F Server Adapter 738640-xxx, A38888-xxx, 50 A06512-xxx 51 52 82543 PRO/1000 T Server Adapter A19845-xxx, A33948-xxx 53 54 82544 PRO/1000 XT Server Adapter A51580-xxx 55 56 82544 PRO/1000 XF Server Adapter A50484-xxx 57 58 82544 PRO/1000 T Desktop Adapter A62947-xxx 59 60 82540 PRO/1000 MT Desktop Adapter A78708-xxx 61 62 82545 PRO/1000 MT Server Adapter A92165-xxx 63 64 82545 PRO/1000 MF Server Adapter A91622-xxx 65 66 82545 PRO/1000 MF Server Adapter(LX) A91624-xxx 67 68 82546 PRO/1000 MT Dual Port Server Adapter A92111-xxx 69 70 82546 PRO/1000 MF Dual Port Server Adapter A91620-xxx 71 72 73To verify your Intel adapter is supported, find the board ID number on the 74adapter. Look for a label that has a barcode and a number in the format of 75123456-001 (six digits hyphen three digits). Match this to the list of 76numbers above. 77 78For more information on how to identify your adapter, go to the Adapter & 79Driver ID Guide at: 80 81 http://support.intel.com/support/network/adapter/pro100/21397.htm 82 83For the latest Intel network drivers for FreeBSD, see: 84 85 http://appsr.intel.com/scripts-df/support_intel.asp 86 87 88Building and Installation 89========================= 90 91NOTE: You must have kernel sources installed in order to compile the driver 92 module. 93 94 In the instructions below, x.x.x is the driver version as indicated in 95 the name of the driver tar. 96 97 981. Move the base driver tar file to the directory of your choice. For 99 example, use /home/username/em or /usr/local/src/em. 100 1012. Untar/unzip the archive: 102 103 tar xfz em-x.x.x.tar.gz 104 1053. To load the driver onto a running system: 106 107 cd em-x.x.x/modules 108 kldload ./if_em.ko 109 1104. To assign an IP address to the interface, enter the following: 111 112 ifconfig em<interface_num> <IP_address> 113 1145. Verify that the interface works. Enter the following, where <IP_address> 115 is the IP address for another machine on the same subnet as the interface 116 that is being tested: 117 118 ping <IP_address> 119 1206. If you want the driver to load automatically when the system is booted: 121 122 cd em-x.x.x/modules 123 cp if_em.ko /modules 124 125 Edit /boot/loader.conf, and add the following line: 126 127 if_em_load="YES" 128 129 OR 130 131 compile the driver into the kernel (see item 7). 132 133 134 Edit /etc/rc.conf, and create the appropriate ifconfig_em<interface_num> 135 entry: 136 137 ifconfig_em<interface_num>="<ifconfig_settings>" 138 139 Example usage: 140 141 ifconfig_em0="inet 192.168.10.1 netmask 255.255.255.0" 142 143 NOTE: For assistance, see the ifconfig man page. 144 1457. If you want to compile the driver into the kernel, enter: 146 147 cd em-x.x.x/src 148 cp if_em* /usr/src/sys/dev/em 149 cp Makefile /usr/src/sys/modules/em 150 151 Edit the /usr/src/sys/conf/files.i386 file, and add the following line: 152 153 dev/em/if_em_hw.c optional em 154 155 Remove the following lines from the /usr/src/sys/conf/files.i386 file, if 156 they exist: 157 158 /dev/em/if_em_fx_hw.c optional em 159 /dev/em/if_em_phy.c optional em 160 161 Compile and install the kernel. 162 163 164Speed and Duplex Configuration 165============================== 166 167By default, the adapter auto-negotiates the speed and duplex of the 168connection. If there is a specific need, the ifconfig utility can be used to 169configure the speed and duplex settings on the adapter. Example usage: 170 171 ifconfig em<interface_num> <IP_address> media 100baseTX mediaopt 172 full-duplex 173 174 NOTE: Only use mediaopt to set the driver to full-duplex. If mediaopt is 175 not specified and you are not running at gigabit speed, the driver 176 defaults to half-duplex. 177 178 179This driver supports the following media type options: 180 181 autoselect - Enables auto-negotiation for speed and duplex. 182 183 10baseT/UTP - Sets speed to 10 Mbps. Use the ifconfig mediaopt 184 option to select full-duplex mode. 185 186 100baseTX - Sets speed to 100 Mbps. Use the ifconfig mediaopt 187 option to select full-duplex mode. 188 189 1000baseTX - Sets speed to 1000 Mbps. In this case, the driver 190 supports only full-duplex mode. 191 192 1000baseSX - Sets speed to 1000 Mbps. In this case, the driver 193 supports only full-duplex mode. 194 195For more information on the ifconfig utility, see the ifconfig man page. 196 197 198Additional Configurations 199========================= 200 201 Jumbo Frames 202 ------------ 203 204 To enable Jumbo Frames, use the ifconfig utility to increase the MTU 205 beyond 1500 bytes. 206 207 NOTE: Only enable Jumbo Frames if your network infrastructure supports 208 them. 209 210 The MTU range for Jumbo Frames is 1500 to 16114. For example, enter the 211 following: 212 213 ifconfig em<interface_num> mtu 9000 214 215 VLANs 216 ----- 217 218 To enable VLANs in the kernel, modify the config file as follows: 219 220 pseudo-device vlan <num_VLANs> 221 222 Then, recompile the kernel and reboot. 223 224 To see the VLAN device entries, use ifconfig. 225 226 To attach a VLAN to the driver enter the following: 227 228 ifconfig vlan0 inet 10.0.0.1 netmask 255.255.255.0 vlan 1 vlandev 229 em0 mtu 1500 up 230 231 Also, bring the driver up by entering: 232 233 ifconfig em0 up 234 235 236Known Limitations 237================= 238 239There are known performance problems with this driver when running UDP 240traffic with Jumbo Frames. Intel recommends not using Jumbo Frames for UDP 241traffic. 242 243 244Support 245======= 246 247For general information and support, go to the Intel support website at: 248 249 http://support.intel.com 250 251If an issue is identified with the released source code on the supported 252kernel with a supported adapter, email the specific information related to 253the issue to freebsdnic@mailbox.intel.com. 254 255 256License 257======= 258 259This software program is released under the terms of a license agreement 260between you ('Licensee') and Intel. Do not use or load this software or any 261associated materials (collectively, the 'Software') until you have carefully 262read the full terms and conditions of the LICENSE located in this software 263package. By loading or using the Software, you agree to the terms of this 264Agreement. If you do not agree with the terms of this Agreement, do not 265install or use the Software. 266 267* Other names and brands may be claimed as the property of others. 268