]> CyberLeo.Net >> Repos - FreeBSD/releng/9.2.git/blob - sys/dev/ixgb/README
- Copy stable/9 to releng/9.2 as part of the 9.2-RELEASE cycle.
[FreeBSD/releng/9.2.git] / sys / dev / ixgb / README
1 /*$FreeBSD$*/
2 FreeBSD Driver for Intel(R) PRO/10GbE Server Adapters
3 =====================================================
4
5 March 10, 2004
6
7
8 Contents
9 ========
10
11 - Overview
12 - Supported Adapters
13 - Building and Installation
14 - Additional Configurations
15
16
17 Overview
18 ========
19
20 This file describes the FreeBSD* driver, version 1.0.x, for the Intel(R)
21 PRO/10GbE Family of Adapters.  This driver has been developed for use with
22 FreeBSD, version 4.8 and later.
23
24 For questions related to hardware requirements, refer to the documentation
25 supplied with your Intel PRO/10GbE adapter.  All hardware requirements listed
26 apply to use with FreeBSD.
27
28
29
30 Supported Adapters
31 ==================
32
33 The following Intel network adapters are compatible with the drivers in this 
34 release:
35
36  Controller     Adapter Name                     Physical Layer
37  ----------     ------------                     --------------
38
39  82597EX        PRO/10GbE LR/SR Server Adapter   10G Base -LR and -SR
40                                                  850 and 1310 nm optical fiber
41
42
43 Building and Installation
44 =========================
45
46 NOTE: You must have kernel sources installed in order to compile the driver
47       module.
48
49       In the instructions below, x.x.x is the driver version as indicated in
50       the name of the driver tar.
51
52
53 1. Move the base driver tar file to the directory of your choice. For 
54    example, use /home/username/ixgb or /usr/local/src/ixgb.
55
56 2. Untar/unzip the archive:
57      tar xfz ixgb-x.x.x.tar.gz
58
59 3. To install man page:
60      cd ixgb-x.x.x
61      gzip -c ixgb.4 > /usr/share/man/man4/ixgb.4.gz
62
63 4. To load the driver onto a running system:
64      cd ixgb-x.x.x/src
65      make load
66
67 5. To assign an IP address to the interface, enter the following:
68      ifconfig ixgb<interface_num> <IP_address>
69
70 6. Verify that the interface works. Enter the following, where <IP_address>
71    is the IP address for another machine on the same subnet as the interface
72    that is being tested:
73      ping <IP_address>
74
75 7. If you want the driver to load automatically when the system is booted:
76
77      cd ixgb-x.x.x/src
78      make load
79      cp if_ixgb.ko /modules
80         
81     Edit /boot/loader.conf, and add the following line:
82      if_ixgb_load="YES"
83
84      OR
85
86      compile the driver into the kernel (see item 7).
87
88
89    Edit /etc/rc.conf, and create the appropriate ifconfig_ixgb<interface_num> 
90    entry:
91
92      ifconfig_ixgb<interface_num>="<ifconfig_settings>"
93
94      Example usage:
95
96      ifconfig_ixgb0="inet 192.168.10.1 netmask 255.255.255.0"
97
98      NOTE: For assistance, see the ifconfig man page.
99
100 8. If you want to compile the driver into the kernel, enter:
101
102      cd ixgb-x.x.x/src
103
104      mkdir /usr/src/sys/dev/ixgb
105
106      cp if_ixgb* /usr/src/sys/dev/ixgb
107
108      cp ixgb* /usr/src/sys/dev/ixgb  
109  
110      cp Makefile.kernel /usr/src/sys/modules/ixgb/Makefile
111
112    If you have an i386 platform, you will need to edit the files.i386 file. 
113    This is usually in /usr/src/sys/conf/; actual locations wil vary depending 
114    on platform.  Add the following lines:
115
116      dev/ixgb/ixgb_hw.c optional ixgb
117      dev/ixgb/ixgb_ee.c optional ixgb
118      dev/ixgb/if_ixgb.c optional ixgb
119
120
121    Remove the following lines from the files.i386 file, if they exist:
122
123      /dev/ixgb/if_ixgb_fx_hw.c optional ixgb
124      /dev/ixgb/if_ixgb_phy.c optional ixgb
125
126    Edit the kernel configuration file (i.e., GENERIC or MYKERNEL) in
127    /usr/src/sys/i386/conf, and ensure the following line is present:
128
129      device ixgb
130
131    Compile and install the kernel.  The system must be reboot for the kernel 
132    updates to take affect.  For additional information on compiling the kernel, 
133    consult the FreeBSD operating system documentation.
134
135
136
137 Additional Configurations
138 =========================
139
140 The driver supports Transmit/Receive Checksum Offload and Jumbo Frames on
141 all PRO/10GbE adapters. 
142
143   Jumbo Frames
144   ------------
145   To enable Jumbo Frames, use the ifconfig utility to increase the MTU
146   beyond 1500 bytes.
147
148   NOTES:
149        - Only enable Jumbo Frames if your network infrastructure supports
150          them.
151
152        - The Jumbo Frames setting on the switch must be set to at least
153          22 bytes larger than that of the adapter.
154
155        - There are known performance issues with this driver when running 
156          UDP traffic with Jumbo Frames. 
157
158   The Jumbo Frames MTU range for Intel Adapters is 1500 to 16114. The default
159   MTU range is 1500. To modify the setting, enter the following:
160
161         ifconfig ixgb<interface_num> <hostname or IP address> mtu 9000
162
163   To confirm an interface's MTU value, use the ifconfig command. To confirm
164   the MTU used between two specific devices, use:
165
166         route get <destination_IP_address>
167
168  VLANs
169   -----
170   To create a new VLAN pseudo-interface:
171
172         ifconfig <vlan_name> create
173
174   To associate the VLAN pseudo-interface with a physical interface and
175   assign a VLAN ID, IP address, and netmask:
176
177         ifconfig <vlan_name> <ip_address> netmask <subnet_mask> vlan
178            <vlan_id> vlandev <physical_interface>
179
180   Example:
181
182         ifconfig vlan10 10.0.0.1 netmask 255.255.255.0 vlan10 vlandev ixgb0
183
184   In this example, all packets will be marked on egress with 802.1Q VLAN 
185   tags, specifying a VLAN ID of 10.
186
187   To remove a VLAN pseudo-interface:
188
189         ifconfig <vlan_name> destroy
190
191   Polling
192   -------
193   To enable polling in the driver, add the following options to the kernel
194   configuration, and then recompile the kernel:
195
196         options DEVICE_POLLING
197         options HZ=1000
198
199   At runtime, use the following command to turn on polling mode.
200
201         ifconfig ixgb0 polling
202
203   Similarly, turn off polling mode by removing IFCAP_POLLING flag from
204   interface:
205
206         ifconfig ixgb0 -polling
207
208   The driver has to be built into the kernel for DEVICE POLLING to be
209   enabled in the driver.
210
211 Support
212 =======
213
214 For general information and support, go to the Intel support website at:
215
216         http://support.intel.com
217
218 If an issue is identified with the released source code on the supported
219 kernel with a supported adapter, email the specific information related to 
220 the issue to freebsdnic@mailbox.intel.com.
221
222
223
224 License
225 =======
226
227 This software program is released under the terms of a license agreement 
228 between you ('Licensee') and Intel. Do not use or load this software or any 
229 associated materials (collectively, the 'Software') until you have carefully 
230 read the full terms and conditions of the LICENSE located in this software 
231 package. By loading or using the Software, you agree to the terms of this 
232 Agreement. If you do not agree with the terms of this Agreement, do not 
233 install or use the Software.
234
235 * Other names and brands may be claimed as the property of others.
236
237