1*4418919fSjohnjiang /* SPDX-License-Identifier: BSD-3-Clause
2*4418919fSjohnjiang  * Copyright(C) 2019 Marvell International Ltd.
3*4418919fSjohnjiang  */
4*4418919fSjohnjiang 
5*4418919fSjohnjiang #ifndef _NITROX_SYM_REQMGR_H_
6*4418919fSjohnjiang #define _NITROX_SYM_REQMGR_H_
7*4418919fSjohnjiang 
8*4418919fSjohnjiang #include "nitrox_sym_ctx.h"
9*4418919fSjohnjiang 
10*4418919fSjohnjiang struct nitrox_qp;
11*4418919fSjohnjiang struct nitrox_softreq;
12*4418919fSjohnjiang 
13*4418919fSjohnjiang int nitrox_process_se_req(uint16_t qno, struct rte_crypto_op *op,
14*4418919fSjohnjiang 			  struct nitrox_crypto_ctx *ctx,
15*4418919fSjohnjiang 			  struct nitrox_softreq *sr);
16*4418919fSjohnjiang int nitrox_check_se_req(struct nitrox_softreq *sr, struct rte_crypto_op **op);
17*4418919fSjohnjiang void *nitrox_sym_instr_addr(struct nitrox_softreq *sr);
18*4418919fSjohnjiang struct rte_mempool *nitrox_sym_req_pool_create(struct rte_cryptodev *cdev,
19*4418919fSjohnjiang 					       uint32_t nobjs, uint16_t qp_id,
20*4418919fSjohnjiang 					       int socket_id);
21*4418919fSjohnjiang void nitrox_sym_req_pool_free(struct rte_mempool *mp);
22*4418919fSjohnjiang 
23*4418919fSjohnjiang #endif /* _NITROX_SYM_REQMGR_H_ */
24