DPDK 22.11.7
|
#include <rte_compat.h>
Go to the source code of this file.
Macros | |
#define | MLX5_DOMAIN_BIT_NIC_RX (1 << 0) |
#define | MLX5_DOMAIN_BIT_NIC_TX (1 << 1) |
#define | MLX5_DOMAIN_BIT_FDB (1 << 2) |
#define | MLX5_EXTERNAL_RX_QUEUE_ID_MIN (UINT16_MAX - 1000 + 1) |
#define | MLX5_HOST_SHAPER_FLAG_AVAIL_THRESH_TRIGGERED 0 |
Functions | |
__rte_experimental int | rte_pmd_mlx5_get_dyn_flag_names (char *names[], unsigned int n) |
__rte_experimental int | rte_pmd_mlx5_sync_flow (uint16_t port_id, uint32_t domains) |
__rte_experimental int | rte_pmd_mlx5_external_rx_queue_id_map (uint16_t port_id, uint16_t dpdk_idx, uint32_t hw_idx) |
__rte_experimental int | rte_pmd_mlx5_external_rx_queue_id_unmap (uint16_t port_id, uint16_t dpdk_idx) |
__rte_experimental int | rte_pmd_mlx5_host_shaper_config (int port_id, uint8_t rate, uint32_t flags) |
__rte_experimental int | rte_pmd_mlx5_external_sq_enable (uint16_t port_id, uint32_t sq_num) |
MLX5 public header.
This interface provides the ability to support private PMD dynamic flags.
Definition in file rte_pmd_mlx5.h.
#define MLX5_DOMAIN_BIT_NIC_RX (1 << 0) |
NIC RX domain bit mask.
Definition at line 41 of file rte_pmd_mlx5.h.
#define MLX5_DOMAIN_BIT_NIC_TX (1 << 1) |
NIC TX domain bit mask.
Definition at line 42 of file rte_pmd_mlx5.h.
#define MLX5_DOMAIN_BIT_FDB (1 << 2) |
FDB (TX + RX) domain bit mask.
Definition at line 43 of file rte_pmd_mlx5.h.
#define MLX5_EXTERNAL_RX_QUEUE_ID_MIN (UINT16_MAX - 1000 + 1) |
External Rx queue rte_flow index minimal value.
Definition at line 69 of file rte_pmd_mlx5.h.
#define MLX5_HOST_SHAPER_FLAG_AVAIL_THRESH_TRIGGERED 0 |
The rate of the host port shaper will be updated directly at the next available descriptor threshold event to the rate that comes with this flag set; set rate 0 to disable this rate update. Unset this flag to update the rate of the host port shaper directly in the API call; use rate 0 to disable the current shaper.
Definition at line 121 of file rte_pmd_mlx5.h.
__rte_experimental int rte_pmd_mlx5_get_dyn_flag_names | ( | char * | names[], |
unsigned int | n | ||
) |
Returns the dynamic flags name, that are supported.
[out] | names | Array that is used to return the supported dynamic flags names. |
[in] | n | The number of elements in the names array. |
__rte_experimental int rte_pmd_mlx5_sync_flow | ( | uint16_t | port_id, |
uint32_t | domains | ||
) |
Synchronize the flows to make them take effort on hardware. It only supports DR flows now. For DV and Verbs flows, there is no need to call this function, and a success will return directly in case of Verbs.
[in] | port_id | The port identifier of the Ethernet device. |
[in] | domains | Refer to "/usr/include/infiniband/mlx5dv.h". Bitmask of domains in which the synchronization will be done. MLX5_DOMAIN_BIT* macros are used to specify the domains. An ADD or OR operation could be used to synchronize flows in more than one domain per call. |
__rte_experimental int rte_pmd_mlx5_external_rx_queue_id_map | ( | uint16_t | port_id, |
uint16_t | dpdk_idx, | ||
uint32_t | hw_idx | ||
) |
Update mapping between rte_flow queue index (16 bits) and HW queue index (32 bits) for RxQs which is created outside the PMD.
[in] | port_id | The port identifier of the Ethernet device. |
[in] | dpdk_idx | Queue index in rte_flow. |
[in] | hw_idx | Queue index in hardware. |
__rte_experimental int rte_pmd_mlx5_external_rx_queue_id_unmap | ( | uint16_t | port_id, |
uint16_t | dpdk_idx | ||
) |
Remove mapping between rte_flow queue index (16 bits) and HW queue index (32 bits) for RxQs which is created outside the PMD.
[in] | port_id | The port identifier of the Ethernet device. |
[in] | dpdk_idx | Queue index in rte_flow. |
__rte_experimental int rte_pmd_mlx5_host_shaper_config | ( | int | port_id, |
uint8_t | rate, | ||
uint32_t | flags | ||
) |
Configure a HW shaper to limit Tx rate for a host port. The configuration will affect all the ethdev ports belonging to the same rte_device.
[in] | port_id | The port identifier of the Ethernet device. |
[in] | rate | Unit is 100Mbps, setting the rate to 0 disables the shaper. |
[in] | flags | Host shaper flags. |
__rte_experimental int rte_pmd_mlx5_external_sq_enable | ( | uint16_t | port_id, |
uint32_t | sq_num | ||
) |
Enable traffic for external SQ.
[in] | port_id | The port identifier of the Ethernet device. |
[in] | sq_num | SQ HW number. |