5 #ifndef _VHOST_CRYPTO_H_
6 #define _VHOST_CRYPTO_H_
10 #include <rte_compat.h>
16 #define VHOST_CRYPTO_MBUF_POOL_SIZE (8192)
17 #define VHOST_CRYPTO_MAX_BURST_SIZE (64)
18 #define VHOST_CRYPTO_MAX_DATA_SIZE (4096)
19 #define VHOST_CRYPTO_SESSION_MAP_ENTRIES (1024)
21 #define VIRTIO_CRYPTO_MAX_NUM_BURST_VQS (64)
22 #define VHOST_CRYPTO_MAX_IV_LEN (32)
23 #define VHOST_CRYPTO_MAX_N_DESC (32)
25 enum rte_vhost_crypto_zero_copy {
26 RTE_VHOST_CRYPTO_ZERO_COPY_DISABLE = 0,
27 RTE_VHOST_CRYPTO_ZERO_COPY_ENABLE = 1,
28 RTE_VHOST_CRYPTO_MAX_ZERO_COPY_OPTIONS
41 rte_vhost_crypto_driver_start(
const char *path);
63 rte_vhost_crypto_create(
int vid, uint8_t cryptodev_id,
79 rte_vhost_crypto_free(
int vid);
94 rte_vhost_crypto_set_zero_copy(
int vid,
enum rte_vhost_crypto_zero_copy option);
115 rte_vhost_crypto_fetch_requests(
int vid, uint32_t qid,
137 rte_vhost_crypto_finalize_requests(
struct rte_crypto_op **ops,
138 uint16_t nb_ops,
int *callfds, uint16_t *nb_callfds);