DPDK  23.03.0
Enumerations | Functions
rte_pmd_cnxk.h File Reference
#include <rte_compat.h>
#include <rte_ethdev.h>
#include <rte_ether.h>
#include <rte_security.h>

Go to the source code of this file.

Enumerations

enum  rte_pmd_cnxk_sec_action_alg { RTE_PMD_CNXK_SEC_ACTION_ALG0, RTE_PMD_CNXK_SEC_ACTION_ALG1, RTE_PMD_CNXK_SEC_ACTION_ALG2, RTE_PMD_CNXK_SEC_ACTION_ALG3 }
 

Functions

__rte_experimental int rte_pmd_cnxk_hw_sa_read (void *device, struct rte_security_session *sess, void *data, uint32_t len)
 
__rte_experimental int rte_pmd_cnxk_hw_sa_write (void *device, struct rte_security_session *sess, void *data, uint32_t len)
 

Detailed Description

CNXK PMD specific functions.

Definition in file rte_pmd_cnxk.h.

Enumeration Type Documentation

◆ rte_pmd_cnxk_sec_action_alg

Algorithm type to be used with security action to calculate SA_index

Enumerator
RTE_PMD_CNXK_SEC_ACTION_ALG0 

No swizzling of SPI bits into SA index. SA_index is from SA_XOR if enabled.

RTE_PMD_CNXK_SEC_ACTION_ALG1 

SPI<31:28> has 4 upper bits which segment the sequence number space. Initial SA_index is from SA_XOR if enabled. SA_alg = { 4'b0, SA_mcam[27:0] + SPI[31:28]}

RTE_PMD_CNXK_SEC_ACTION_ALG2 

SPI<27:25> segment the sequence number space. Initial SA_index is from SA_XOR if enabled. SA_alg = { 7'b0, SA_mcam[24:0] + SPI[27:25]}

RTE_PMD_CNXK_SEC_ACTION_ALG3 

The inbound SPI maybe "random", therefore we want the MCAM to be capable of remapping the SPI to an arbitrary SA_index. SPI to SA is done using a lookup in NIX/NPC cam entry with key as SPI, MATCH_ID, LFID.

Definition at line 22 of file rte_pmd_cnxk.h.

Function Documentation

◆ rte_pmd_cnxk_hw_sa_read()

__rte_experimental int rte_pmd_cnxk_hw_sa_read ( void *  device,
struct rte_security_session *  sess,
void *  data,
uint32_t  len 
)

Read HW SA context from session.

Parameters
devicePort identifier of Ethernet device.
sessHandle of the security session.
[out]dataDestination pointer to copy SA context for application.
lenLength of SA context to copy into data parameter.
Returns
0 on success, a negative errno value otherwise.

◆ rte_pmd_cnxk_hw_sa_write()

__rte_experimental int rte_pmd_cnxk_hw_sa_write ( void *  device,
struct rte_security_session *  sess,
void *  data,
uint32_t  len 
)

Write HW SA context to session.

Parameters
devicePort identifier of Ethernet device.
sessHandle of the security session.
[in]dataSource data pointer from application to copy SA context into session.
lenLength of SA context to copy from data parameter.
Returns
0 on success, a negative errno value otherwise.