52. TXGBE Poll Mode Driver
The TXGBE PMD (librte_pmd_txgbe) provides poll mode driver support for Wangxun 10 Gigabit Ethernet NICs.
52.1. Features
- Multiple queues for TX and RX
- Receiver Side Scaling (RSS)
- MAC/VLAN filtering
- Packet type information
- Checksum offload
- VLAN/QinQ stripping and inserting
- TSO offload
- Promiscuous mode
- Multicast mode
- Port hardware statistics
- Jumbo frames
- Link state information
- Link flow control
- Interrupt mode for RX
- Scattered and gather for TX and RX
- DCB
- IEEE 1588
- FW version
- LRO
52.2. Prerequisites
- Learning about Wangxun 10 Gigabit Ethernet NICs using https://www.net-swift.com/a/383.html.
- Follow the DPDK Getting Started Guide for Linux to setup the basic DPDK environment.
52.3. Pre-Installation Configuration
52.3.1. Build Options
The following build-time options may be enabled on build time using.
-Dc_args=
meson argument (e.g. -Dc_args=-DRTE_LIBRTE_TXGBE_DEBUG_RX
).
Please note that enabling debugging options may affect system performance.
RTE_LIBRTE_TXGBE_DEBUG_RX
(undefined by default)Toggle display of receive fast path run-time messages.
RTE_LIBRTE_TXGBE_DEBUG_TX
(undefined by default)Toggle display of transmit fast path run-time messages.
RTE_LIBRTE_TXGBE_DEBUG_TX_FREE
(undefined by default)Toggle display of transmit descriptor clean messages.
52.3.2. Dynamic Logging Parameters
One may leverage EAL option “–log-level” to change default levels for the log types supported by the driver. The option is used with an argument typically consisting of two parts separated by a colon.
TXGBE PMD provides the following log types available for control:
pmd.net.txgbe.driver
(default level is notice)Affects driver-wide messages unrelated to any particular devices.
pmd.net.txgbe.init
(default level is notice)Extra logging of the messages during PMD initialization.
52.4. Driver compilation and testing
Refer to the document compiling and testing a PMD for a NIC for details.
52.5. Limitations or Known issues
Build with ICC is not supported yet. Power8, ARMv7 and BSD are not supported yet.