Neterion's (Formerly S2io) X3100 Series 10GbE PCIe Server Adapter Linux driver ============================================================================== Contents -------- 1) Introduction 2) Features supported 3) Configurable driver parameters 4) Troubleshooting 1) Introduction: ---------------- This Linux driver supports all Neterion's X3100 series 10 GbE PCIe I/O Virtualized Server adapters. The X3100 series supports four modes of operation, configurable via firmware - Single function mode Multi function mode SRIOV mode MRIOV mode The functions share a 10GbE link and the pci-e bus, but hardly anything else inside the ASIC. Features like independent hw reset, statistics, bandwidth/ priority allocation and guarantees, GRO, TSO, interrupt moderation etc are supported independently on each function. (See below for a complete list of features supported for both IPv4 and IPv6) 2) Features supported: ---------------------- i) Single function mode (up to 17 queues) ii) Multi function mode (up to 17 functions) iii) PCI-SIG's I/O Virtualization - Single Root mode: v1.0 (up to 17 functions) - Multi-Root mode: v1.0 (up to 17 functions) iv) Jumbo frames X3100 Series supports MTU up to 9600 bytes, modifiable using ip command. v) Offloads supported: (Enabled by default) Checksum offload (TCP/UDP/IP) on transmit and receive paths TCP Segmentation Offload (TSO) on transmit path Generic Receive Offload (GRO) on receive path vi) MSI-X: (Enabled by default) Resulting in noticeable performance improvement (up to 7% on certain platforms). vii) NAPI: (Enabled by default) For better Rx interrupt moderation. viii)RTH (Receive Traffic Hash): (Enabled by default) Receive side steering for better scaling. ix) Statistics Comprehensive MAC-level and software statistics displayed using "ethtool -S" option. x) Multiple hardware queues: (Enabled by default) Up to 17 hardware based transmit and receive data channels, with multiple steering options (transmit multiqueue enabled by default). 3) Configurable driver parameters: ---------------------------------- i) max_config_dev Specifies maximum device functions to be enabled. Valid range: 1-8 ii) max_config_port Specifies number of ports to be enabled. Valid range: 1,2 Default: 1 iii)max_config_vpath Specifies maximum VPATH(s) configured for each device function. Valid range: 1-17 iv) vlan_tag_strip Enables/disables vlan tag stripping from all received tagged frames that are not replicated at the internal L2 switch. Valid range: 0,1 (disabled, enabled respectively) Default: 1 v) addr_learn_en Enable learning the mac address of the guest OS interface in virtualization environment. Valid range: 0,1 (disabled, enabled respectively) Default: 0