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