The Design and Implementation of the FreeBSD Operating System, Second Edition
Now available: The Design and Implementation of the FreeBSD Operating System (Second Edition)


[ source navigation ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]

FreeBSD/Linux Kernel Cross Reference
sys/dev/ixgb/

Version: -  FREEBSD  -  FREEBSD-12-STABLE  -  FREEBSD-12-0  -  FREEBSD-11-STABLE  -  FREEBSD-11-2  -  FREEBSD-11-1  -  FREEBSD-11-0  -  FREEBSD-10-STABLE  -  FREEBSD-10-4  -  FREEBSD-10-3  -  FREEBSD-10-2  -  FREEBSD-10-1  -  FREEBSD-10-0  -  FREEBSD-9-STABLE  -  FREEBSD-9-3  -  FREEBSD-9-2  -  FREEBSD-9-1  -  FREEBSD-9-0  -  FREEBSD-8-STABLE  -  FREEBSD-8-4  -  FREEBSD-8-3  -  FREEBSD-8-2  -  FREEBSD-8-1  -  FREEBSD-8-0  -  FREEBSD-7-STABLE  -  FREEBSD-7-4  -  FREEBSD-7-3  -  FREEBSD-7-2  -  FREEBSD-7-1  -  FREEBSD-7-0  -  FREEBSD-6-STABLE  -  FREEBSD-6-4  -  FREEBSD-6-3  -  FREEBSD-6-2  -  FREEBSD-6-1  -  FREEBSD-6-0  -  FREEBSD-5-STABLE  -  FREEBSD-5-5  -  FREEBSD-5-4  -  FREEBSD-5-3  -  FREEBSD-5-2  -  FREEBSD-5-1  -  FREEBSD-5-0  -  FREEBSD-4-STABLE  -  FREEBSD-3-STABLE  -  FREEBSD22  -  linux-2.6  -  linux-2.4.22  -  MK83  -  MK84  -  PLAN9  -  DFBSD  -  NETBSD  -  NETBSD5  -  NETBSD4  -  NETBSD3  -  NETBSD20  -  OPENBSD  -  xnu-517  -  xnu-792  -  xnu-792.6.70  -  xnu-1228  -  xnu-1456.1.26  -  xnu-1699.24.8  -  xnu-2050.18.24  -  OPENSOLARIS  -  minix-3-1-1 
SearchContext: -  none  -  3  -  10 

Name Size Last modified (GMT) Description
Back Parent directory 2019-04-21 12:10:37
File LICENSE 1539 bytes 2009-06-27 14:21:37
File README 6718 bytes 2009-06-27 14:21:37
C file if_ixgb.c 72972 bytes 2009-06-27 14:21:37
C file if_ixgb.h 12094 bytes 2009-06-27 14:21:37
C file if_ixgb_osdep.h 4348 bytes 2009-06-27 14:21:37
C file ixgb_ee.c 24426 bytes 2009-06-27 14:21:37
C file ixgb_ee.h 4355 bytes 2009-06-27 14:21:37
C file ixgb_hw.c 42393 bytes 2009-06-27 14:21:37
C file ixgb_hw.h 33862 bytes 2009-06-27 14:21:37
C file ixgb_ids.h 2715 bytes 2009-06-27 14:21:37

    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. Similarly,
  200   turn off polling mode by setting the variable to 0:
  201 
  202         sysctl kern.polling.enable=1
  203 
  204 
  205   NOTES: DEVICE POLLING is only valid for non-SMP kernels.
  206 
  207          The driver has to be built into the kernel for DEVICE POLLING to be
  208          enabled in the driver.
  209 
  210 
  211 
  212 Support
  213 =======
  214 
  215 For general information and support, go to the Intel support website at:
  216 
  217         http://support.intel.com
  218 
  219 If an issue is identified with the released source code on the supported
  220 kernel with a supported adapter, email the specific information related to 
  221 the issue to freebsdnic@mailbox.intel.com.
  222 
  223 
  224 
  225 License
  226 =======
  227 
  228 This software program is released under the terms of a license agreement 
  229 between you ('Licensee') and Intel. Do not use or load this software or any 
  230 associated materials (collectively, the 'Software') until you have carefully 
  231 read the full terms and conditions of the LICENSE located in this software 
  232 package. By loading or using the Software, you agree to the terms of this 
  233 Agreement. If you do not agree with the terms of this Agreement, do not 
  234 install or use the Software.
  235 
  236 * Other names and brands may be claimed as the property of others.
  237 
  238 

[ source navigation ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]


This page is part of the FreeBSD/Linux Linux Kernel Cross-Reference, and was automatically generated using a modified version of the LXR engine.