Merge branch 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6
[linux-2.6-microblaze.git] / Documentation / networking / device_drivers / ethernet / neterion / vxge.rst
1 .. SPDX-License-Identifier: GPL-2.0
2
3 ==============================================================================
4 Neterion's (Formerly S2io) X3100 Series 10GbE PCIe Server Adapter Linux driver
5 ==============================================================================
6
7 .. Contents
8
9   1) Introduction
10   2) Features supported
11   3) Configurable driver parameters
12   4) Troubleshooting
13
14 1. Introduction
15 ===============
16
17 This Linux driver supports all Neterion's X3100 series 10 GbE PCIe I/O
18 Virtualized Server adapters.
19
20 The X3100 series supports four modes of operation, configurable via
21 firmware:
22
23         - Single function mode
24         - Multi function mode
25         - SRIOV mode
26         - MRIOV mode
27
28 The functions share a 10GbE link and the pci-e bus, but hardly anything else
29 inside the ASIC. Features like independent hw reset, statistics, bandwidth/
30 priority allocation and guarantees, GRO, TSO, interrupt moderation etc are
31 supported independently on each function.
32
33 (See below for a complete list of features supported for both IPv4 and IPv6)
34
35 2. Features supported
36 =====================
37
38 i)   Single function mode (up to 17 queues)
39
40 ii)  Multi function mode (up to 17 functions)
41
42 iii) PCI-SIG's I/O Virtualization
43
44        - Single Root mode: v1.0 (up to 17 functions)
45        - Multi-Root mode: v1.0 (up to 17 functions)
46
47 iv)  Jumbo frames
48
49        X3100 Series supports MTU up to 9600 bytes, modifiable using
50        ip command.
51
52 v)   Offloads supported: (Enabled by default)
53
54        - Checksum offload (TCP/UDP/IP) on transmit and receive paths
55        - TCP Segmentation Offload (TSO) on transmit path
56        - Generic Receive Offload (GRO) on receive path
57
58 vi)  MSI-X: (Enabled by default)
59
60        Resulting in noticeable performance improvement (up to 7% on certain
61        platforms).
62
63 vii) NAPI: (Enabled by default)
64
65        For better Rx interrupt moderation.
66
67 viii)RTH (Receive Traffic Hash): (Enabled by default)
68
69        Receive side steering for better scaling.
70
71 ix)  Statistics
72
73        Comprehensive MAC-level and software statistics displayed using
74        "ethtool -S" option.
75
76 x)   Multiple hardware queues: (Enabled by default)
77
78        Up to 17 hardware based transmit and receive data channels, with
79        multiple steering options (transmit multiqueue enabled by default).
80
81 3) Configurable driver parameters:
82 ----------------------------------
83
84 i)  max_config_dev
85        Specifies maximum device functions to be enabled.
86
87        Valid range: 1-8
88
89 ii) max_config_port
90        Specifies number of ports to be enabled.
91
92        Valid range: 1,2
93
94        Default: 1
95
96 iii) max_config_vpath
97        Specifies maximum VPATH(s) configured for each device function.
98
99        Valid range: 1-17
100
101 iv) vlan_tag_strip
102        Enables/disables vlan tag stripping from all received tagged frames that
103        are not replicated at the internal L2 switch.
104
105        Valid range: 0,1 (disabled, enabled respectively)
106
107        Default: 1
108
109 v)  addr_learn_en
110        Enable learning the mac address of the guest OS interface in
111        virtualization environment.
112
113        Valid range: 0,1 (disabled, enabled respectively)
114
115        Default: 0