crypto/mlx5: support queue pairs operations
[dpdk.git] / drivers / crypto / mlx5 / mlx5_crypto.h
index 11772bb..949092c 100644 (file)
 #include <rte_cryptodev_pmd.h>
 
 #include <mlx5_common_utils.h>
+#include <mlx5_common_devx.h>
 
 #define MLX5_CRYPTO_DEK_HTABLE_SZ (1 << 11)
 #define MLX5_CRYPTO_KEY_LENGTH 80
+#define MLX5_CRYPTO_WQE_SET_SIZE 1024
 
 struct mlx5_crypto_priv {
        TAILQ_ENTRY(mlx5_crypto_priv) next;
@@ -27,6 +29,15 @@ struct mlx5_crypto_priv {
        struct rte_cryptodev_config dev_config;
 };
 
+struct mlx5_crypto_qp {
+       struct mlx5_devx_cq cq_obj;
+       struct mlx5_devx_obj *qp_obj;
+       struct mlx5dv_devx_umem *umem_obj;
+       void *umem_buf;
+       volatile uint32_t *db_rec;
+       struct rte_crypto_op **ops;
+};
+
 struct mlx5_crypto_dek {
        struct mlx5_list_entry entry; /* Pointer to DEK hash list entry. */
        struct mlx5_devx_obj *obj; /* Pointer to DEK DevX object. */