DPDK 25.03.0-rc0
rte_cryptodev_core.h
Go to the documentation of this file.
1/* SPDX-License-Identifier: BSD-3-Clause
2 * Copyright(C) 2021 Marvell.
3 */
4
5#ifndef _RTE_CRYPTODEV_CORE_H_
6#define _RTE_CRYPTODEV_CORE_H_
7
19typedef uint16_t (*dequeue_pkt_burst_t)(void *qp,
20 struct rte_crypto_op **ops, uint16_t nb_ops);
23typedef uint16_t (*enqueue_pkt_burst_t)(void *qp,
24 struct rte_crypto_op **ops, uint16_t nb_ops);
27typedef uint32_t (*crypto_qp_depth_used_t)(void *qp);
37struct rte_cryptodev_qpdata {
39 void **data;
41 struct rte_cryptodev_cb_rcu *enq_cb;
43 struct rte_cryptodev_cb_rcu *deq_cb;
44};
45
46struct __rte_cache_aligned rte_crypto_fp_ops {
48 enqueue_pkt_burst_t enqueue_burst;
50 dequeue_pkt_burst_t dequeue_burst;
52 struct rte_cryptodev_qpdata qp;
54 crypto_qp_depth_used_t qp_depth_used;
56 uintptr_t reserved[2];
57};
58
59extern struct rte_crypto_fp_ops rte_crypto_fp_ops[RTE_CRYPTO_MAX_DEVS];
60
64extern struct rte_cryptodev *rte_cryptodevs;
65
66#endif /* _RTE_CRYPTODEV_CORE_H_ */
#define __rte_cache_aligned
Definition: rte_common.h:627
uint16_t(* enqueue_pkt_burst_t)(void *qp, struct rte_crypto_op **ops, uint16_t nb_ops)
uint16_t(* dequeue_pkt_burst_t)(void *qp, struct rte_crypto_op **ops, uint16_t nb_ops)
uint32_t(* crypto_qp_depth_used_t)(void *qp)
struct rte_cryptodev * rte_cryptodevs