11#ifndef _PMD_CNXK_CRYPTO_H_
12#define _PMD_CNXK_CRYPTO_H_
17#include <rte_compat.h>
21#define AE_EC_DATA_MAX 66
27 RTE_PMD_CNXK_AE_EC_ID_P192 = 0,
28 RTE_PMD_CNXK_AE_EC_ID_P224 = 1,
29 RTE_PMD_CNXK_AE_EC_ID_P256 = 2,
30 RTE_PMD_CNXK_AE_EC_ID_P384 = 3,
31 RTE_PMD_CNXK_AE_EC_ID_P521 = 4,
32 RTE_PMD_CNXK_AE_EC_ID_P160 = 5,
33 RTE_PMD_CNXK_AE_EC_ID_P320 = 6,
34 RTE_PMD_CNXK_AE_EC_ID_P512 = 7,
35 RTE_PMD_CNXK_AE_EC_ID_SM2 = 8,
36 RTE_PMD_CNXK_AE_EC_ID_ED25519 = 9,
37 RTE_PMD_CNXK_AE_EC_ID_ED448 = 10,
38 RTE_PMD_CNXK_AE_EC_ID_PMAX
49struct rte_pmd_cnxk_crypto_qptr;
56struct rte_pmd_cnxk_crypto_cptr;
109 uint8_t data[AE_EC_DATA_MAX];
115 uint8_t data[AE_EC_DATA_MAX];
121 uint8_t data[AE_EC_DATA_MAX];
127 uint8_t data[AE_EC_DATA_MAX];
188 struct rte_pmd_cnxk_crypto_cptr *cptr,
227 struct rte_pmd_cnxk_crypto_cptr *cptr,
void *data,
253 struct rte_pmd_cnxk_crypto_cptr *cptr,
void *data,
__rte_experimental int rte_pmd_cnxk_crypto_qp_stats_get(struct rte_pmd_cnxk_crypto_qptr *qptr, struct rte_pmd_cnxk_crypto_qp_stats *stats)
__rte_experimental struct rte_pmd_cnxk_crypto_qptr * rte_pmd_cnxk_crypto_qptr_get(uint8_t dev_id, uint16_t qp_id)
__rte_experimental const uint64_t * rte_pmd_cnxk_ae_fpm_table_get(uint8_t dev_id)
__rte_experimental int rte_pmd_cnxk_crypto_cptr_flush(struct rte_pmd_cnxk_crypto_qptr *qptr, struct rte_pmd_cnxk_crypto_cptr *cptr, bool invalidate)
__rte_experimental void rte_pmd_cnxk_crypto_submit(struct rte_pmd_cnxk_crypto_qptr *qptr, void *inst, uint16_t nb_inst)
__rte_experimental const struct rte_pmd_cnxk_crypto_ae_ec_group_params ** rte_pmd_cnxk_ae_ec_grp_table_get(uint8_t dev_id, uint16_t *nb_max_entries)
__rte_experimental int rte_pmd_cnxk_crypto_cptr_read(struct rte_pmd_cnxk_crypto_qptr *qptr, struct rte_pmd_cnxk_crypto_cptr *cptr, void *data, uint32_t len)
__rte_experimental int rte_pmd_cnxk_crypto_cptr_write(struct rte_pmd_cnxk_crypto_qptr *qptr, struct rte_pmd_cnxk_crypto_cptr *cptr, void *data, uint32_t len)
__rte_experimental struct rte_pmd_cnxk_crypto_cptr * rte_pmd_cnxk_crypto_cptr_get(struct rte_pmd_cnxk_crypto_sess *rte_sess)
AE EC (Elliptic Curve) group parameters structure.
Crypto CNXK queue pair stats.
Crypto CNXK PMD session structure.
enum rte_crypto_op_sess_type sess_type
struct rte_cryptodev_asym_session * crypto_asym_sess
struct rte_cryptodev_sym_session * crypto_sym_sess
enum rte_crypto_op_type op_type
struct rte_security_session * sec_sess