1 /* SPDX-License-Identifier: GPL-2.0 */
2 #ifndef __NITROX_COMMON_H
3 #define __NITROX_COMMON_H
4 
5 #include "nitrox_dev.h"
6 #include "nitrox_req.h"
7 
8 int nitrox_crypto_register(void);
9 void nitrox_crypto_unregister(void);
10 int nitrox_register_aeads(void);
11 void nitrox_unregister_aeads(void);
12 int nitrox_register_skciphers(void);
13 void nitrox_unregister_skciphers(void);
14 void *crypto_alloc_context(struct nitrox_device *ndev);
15 void crypto_free_context(void *ctx);
16 struct nitrox_device *nitrox_get_first_device(void);
17 void nitrox_put_device(struct nitrox_device *ndev);
18 
19 int nitrox_common_sw_init(struct nitrox_device *ndev);
20 void nitrox_common_sw_cleanup(struct nitrox_device *ndev);
21 
22 void pkt_slc_resp_tasklet(unsigned long data);
23 int nitrox_process_se_request(struct nitrox_device *ndev,
24 			      struct se_crypto_request *req,
25 			      completion_t cb,
26 			      void *cb_arg);
27 void backlog_qflush_work(struct work_struct *work);
28 
29 
30 #endif /* __NITROX_COMMON_H */
31