net/txgbe: support Tx with hardware offload
[dpdk.git] / doc / guides / nics / txgbe.rst
1 ..  SPDX-License-Identifier: BSD-3-Clause
2     Copyright(c) 2015-2020.
3
4 TXGBE Poll Mode Driver
5 ======================
6
7 The TXGBE PMD (librte_pmd_txgbe) provides poll mode driver support
8 for Wangxun 10 Gigabit Ethernet NICs.
9
10 Features
11 --------
12
13 - Multiple queues for TX and RX
14 - MAC filtering
15 - Packet type information
16 - Checksum offload
17 - TSO offload
18 - Jumbo frames
19 - Link state information
20 - Scattered and gather for TX
21
22 Prerequisites
23 -------------
24
25 - Learning about Wangxun 10 Gigabit Ethernet NICs using
26   `<https://www.net-swift.com/a/383.html>`_.
27
28 - Follow the DPDK :ref:`Getting Started Guide for Linux <linux_gsg>` to setup the basic DPDK environment.
29
30 Pre-Installation Configuration
31 ------------------------------
32
33 Build Options
34 ~~~~~~~~~~~~~
35
36 The following build-time options may be enabled on build time using.
37
38 ``-Dc_args=`` meson argument (e.g. ``-Dc_args=-DRTE_LIBRTE_TXGBE_DEBUG_RX``).
39
40 Please note that enabling debugging options may affect system performance.
41
42 - ``RTE_LIBRTE_TXGBE_DEBUG_RX`` (undefined by default)
43
44   Toggle display of receive fast path run-time messages.
45
46 - ``RTE_LIBRTE_TXGBE_DEBUG_TX`` (undefined by default)
47
48   Toggle display of transmit fast path run-time messages.
49
50 - ``RTE_LIBRTE_TXGBE_DEBUG_TX_FREE`` (undefined by default)
51
52   Toggle display of transmit descriptor clean messages.
53
54 Dynamic Logging Parameters
55 ~~~~~~~~~~~~~~~~~~~~~~~~~~
56
57 One may leverage EAL option "--log-level" to change default levels
58 for the log types supported by the driver. The option is used with
59 an argument typically consisting of two parts separated by a colon.
60
61 TXGBE PMD provides the following log types available for control:
62
63 - ``pmd.net.txgbe.driver`` (default level is **notice**)
64
65   Affects driver-wide messages unrelated to any particular devices.
66
67 - ``pmd.net.txgbe.init`` (default level is **notice**)
68
69   Extra logging of the messages during PMD initialization.
70
71 Driver compilation and testing
72 ------------------------------
73
74 Refer to the document :ref:`compiling and testing a PMD for a NIC <pmd_build_and_test>`
75 for details.
76
77 Limitations or Known issues
78 ---------------------------
79
80 Build with ICC is not supported yet.
81 Power8, ARMv7 and BSD are not supported yet.