rte_eth_conf(3)
π rte_eth_conf(3) π
okay bestie, welcome to the Library Functions Manual for rte_eth_conf β yes, the section 3 one, the glow-up of an Ethernet port config struct. sit down, grab a strawberry drink π, and let's get into it.
β¨ NAME β¨
rte_eth_conf β literally the blueprint for how you set up an Ethernet port, no cap.
πΈ SYNOPSIS πΈ
#include <rte_ethdev.h>
π Data Fields π
uint32_t link_speeds
struct rte_eth_rxmode rxmode
struct rte_eth_txmode txmode
uint32_t lpbk_mode
struct {
struct rte_eth_rss_conf rss_conf
struct rte_eth_vmdq_dcb_conf vmdq_dcb_conf
struct rte_eth_dcb_rx_conf dcb_rx_conf
struct rte_eth_vmdq_rx_conf vmdq_rx_conf
} rx_adv_conf
union {
struct rte_eth_vmdq_dcb_tx_conf vmdq_dcb_tx_conf
struct rte_eth_dcb_tx_conf dcb_tx_conf
struct rte_eth_vmdq_tx_conf vmdq_tx_conf
} tx_adv_conf
uint32_t dcb_capability_en
struct rte_eth_intr_conf intr_conf
π Detailed Description π
It's giving structure used to configure an Ethernet port. π Depending on which Rx multi-queue mode you're in, you might need extra advanced configuration settings β so like, sometimes the basic fit is enough, sometimes you gotta accessorize. β¨
Defined at line 1542 of file rte_ethdev.h.
π¦ Field Documentation π¦
uint32_t link_speeds
a bitmap of RTE_ETH_LINK_SPEED_XXX of the speeds you wanna use. β‘
RTE_ETH_LINK_SPEED_FIXED disables link autonegotiation, and a unique speed shall be set. Otherwise, the bitmap defines the set of speeds to be advertised. And if you use the special value RTE_ETH_LINK_SPEED_AUTONEG (that's 0, bestie), all speeds supported get advertised. π
Defined at line 1543 of file rte_ethdev.h.
struct rte_eth_rxmode rxmode
Port Rx configuration. π₯
Defined at line 1550 of file rte_ethdev.h.
struct rte_eth_txmode txmode
Port Tx configuration. π€
Defined at line 1551 of file rte_ethdev.h.
uint32_t lpbk_mode
Loopback operation mode. By default the value is 0, which means the loopback mode is disabled. π Read the datasheet of the given Ethernet controller for the details β fr fr, go read it. The possible values of this field are defined in the implementation of each driver, so it's very much an iykyk situation.
Defined at line 1552 of file rte_ethdev.h.
struct rte_eth_rss_conf rss_conf
Port RSS configuration. π§
Defined at line 1558 of file rte_ethdev.h.
struct rte_eth_vmdq_dcb_conf vmdq_dcb_conf
Port VMDq+DCB configuration. π
Defined at line 1560 of file rte_ethdev.h.
struct rte_eth_dcb_rx_conf dcb_rx_conf
Port DCB Rx configuration. π₯β¨
Defined at line 1562 of file rte_ethdev.h.
struct rte_eth_vmdq_rx_conf vmdq_rx_conf
Port VMDq Rx configuration. π«Ά
Defined at line 1564 of file rte_ethdev.h.
struct { ... } rx_adv_conf
Port Rx filtering configuration. π
struct rte_eth_vmdq_dcb_tx_conf vmdq_dcb_tx_conf
Port VMDq+DCB Tx configuration. ππ€
Defined at line 1568 of file rte_ethdev.h.
struct rte_eth_dcb_tx_conf dcb_tx_conf
Port DCB Tx configuration. π€β¨
Defined at line 1570 of file rte_ethdev.h.
struct rte_eth_vmdq_tx_conf vmdq_tx_conf
Port VMDq Tx configuration. π«Ά
Defined at line 1572 of file rte_ethdev.h.
union { ... } tx_adv_conf
Port Tx DCB configuration β and it's a union, bestie, so it's one-or-the-other energy, not all at once. π
uint32_t dcb_capability_en
Currently, Priority Flow Control (PFC) is supported. So if you need DCB with PFC, this variable must be set to RTE_ETH_DCB_PFC_SUPPORT. periodt. π₯
Defined at line 1576 of file rte_ethdev.h.
struct rte_eth_intr_conf intr_conf
Interrupt mode configuration. π
Defined at line 1577 of file rte_ethdev.h.
π Author π
Generated automatically by Doxygen for DPDK from the source code. (not a human, just a very diligent robot π)
okay that's the whole page, you ate it, you understood it, main character energy confirmed. π this was DPDK, Version 25.11.3 β mwah, bye bestie! πβ¨π¦
π¦ where this page comes from
- ubuntu resolute: dpdk-doc 25.11.3-0ubuntu0.26.04.1 Β· BSD-3-Clause
- ubuntu stonking: dpdk-doc 25.11.3-1 Β· BSD-3-Clause
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms