rte_pmd_dpaa2.h(3)
๐ rte_pmd_dpaa2.h (3) ๐
okay so bestie, this is a page from the Library Functions Manual and it's literally all about the NXP dpaa2 PMD specific functions. strap in, it's giving very niche but very iconic ๐ฆ
๐ธ NAME ๐ธ
rte_pmd_dpaa2.h
โจ SYNOPSIS โจ
#include <rte_compat.h>
#include <rte_flow.h>
๐ Functions ๐
int rte_pmd_dpaa2_mux_flow_create (uint32_t dpdmux_id, struct rte_flow_item pattern[], struct rte_flow_action actions[])__rte_experimental void rte_pmd_dpaa2_mux_dump_counter (FILE *f, uint32_t dpdmux_id, int num_if)__rte_experimental int rte_pmd_dpaa2_mux_rx_frame_len (uint32_t dpdmux_id, uint16_t max_rx_frame_len)int rte_pmd_dpaa2_set_custom_hash (uint16_t port_id, uint16_t offset, uint8_t size)__rte_experimental void rte_pmd_dpaa2_thread_init (void)__rte_experimental uint32_t rte_pmd_dpaa2_get_tlu_hash (uint8_t *key, int size)
๐ฆ DETAILED DESCRIPTION ๐ฆ
NXP dpaa2 PMD specific functions. that's the whole vibe. ๐
Definition in file rte_pmd_dpaa2.h.
๐ FUNCTION DOCUMENTATION ๐
๐ int rte_pmd_dpaa2_mux_flow_create (uint32_t dpdmux_id, struct rte_flow_item pattern[], struct rte_flow_action actions[])
Create a flow rule to demultiplex ethernet traffic to separate network interfaces. yes queen, split that traffic up โจ
Parameters
dpdmux_idโ ID of the DPDMUX MC object.patternโ Pattern specification.actionsโ Associated actions.
Returns
0 in case of success, otherwise failure.
๐ __rte_experimental void rte_pmd_dpaa2_mux_dump_counter (FILE * f, uint32_t dpdmux_id, int num_if)
Warning EXPERIMENTAL: this API may change, or be removed, without prior notice ๐ญ
Dump demultiplex ethernet traffic counters. numbers go brrr ๐
Parameters
fโ output streamdpdmux_idโ ID of the DPDMUX MC object.num_ifโ number of interface in dpdmux object
๐ __rte_experimental int rte_pmd_dpaa2_mux_rx_frame_len (uint32_t dpdmux_id, uint16_t max_rx_frame_len)
Warning EXPERIMENTAL: this API may change, or be removed, without prior notice ๐ญ
demultiplex interface max rx frame length configure. setting the limit fr fr ๐
Parameters
dpdmux_idโ ID of the DPDMUX MC object.max_rx_frame_lenโ maximum receive frame length (will be checked to be minimux of all dpnis)
๐ int rte_pmd_dpaa2_set_custom_hash (uint16_t port_id, uint16_t offset, uint8_t size)
Create a custom hash key on basis of offset of start of packet and size. for e.g. if we need GRE packets (non-vlan and without any extra headers) to be hashed on basis of inner IP header, we will provide offset as: 14 (eth) + 20 (IP) + 4 (GRE) + 12 (Inner Src offset) = 50 and size as 8 bytes. the math is mathing ๐งฎโจ
Parameters
port_idโ The port identifier of the Ethernet device.offsetโ Offset from the start of packet which needs to be included to calculate hashsizeโ Size of the hash input key
Returns
0if successful.- Negative in case of failure.
๐ __rte_experimental void rte_pmd_dpaa2_thread_init (void )
Warning EXPERIMENTAL: this API may change, or be removed, without prior notice ๐ญ
Do thread specific initialization. gotta set up your thread, periodt ๐งต
๐ __rte_experimental uint32_t rte_pmd_dpaa2_get_tlu_hash (uint8_t * key, int size)
Warning EXPERIMENTAL: this API may change, or be removed, without prior notice ๐ญ
Generate the DPAA2 WRIOP based hash value ๐ฅ
Parameters
keyโ Array of key datasizeโ Size of the hash input key in bytes
Returns
0if successful.- Negative in case of failure.
๐ AUTHOR ๐
Generated automatically by Doxygen for DPDK from the source code. not me being written by a robot ๐
and that's the whole page bestie, no cap ๐ซถ it's DPDK Version 25.11.3 energy all the way through, and yes, this adorable little header file documentation is exactly what you came here for. slay, go write some flow rules ๐โจ๐
๐ฆ 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