1 #ifndef __NITROX_COMMON_H
2 #define __NITROX_COMMON_H
3 
4 #include "nitrox_dev.h"
5 #include "nitrox_req.h"
6 
7 int nitrox_crypto_register(void);
8 void nitrox_crypto_unregister(void);
9 void *crypto_alloc_context(struct nitrox_device *ndev);
10 void crypto_free_context(void *ctx);
11 struct nitrox_device *nitrox_get_first_device(void);
12 void nitrox_put_device(struct nitrox_device *ndev);
13 
14 void nitrox_pf_cleanup_isr(struct nitrox_device *ndev);
15 int nitrox_pf_init_isr(struct nitrox_device *ndev);
16 
17 int nitrox_common_sw_init(struct nitrox_device *ndev);
18 void nitrox_common_sw_cleanup(struct nitrox_device *ndev);
19 
20 void pkt_slc_resp_handler(unsigned long data);
21 int nitrox_process_se_request(struct nitrox_device *ndev,
22 			      struct se_crypto_request *req,
23 			      completion_t cb,
24 			      struct skcipher_request *skreq);
25 void backlog_qflush_work(struct work_struct *work);
26 
27 void nitrox_config_emu_unit(struct nitrox_device *ndev);
28 void nitrox_config_pkt_input_rings(struct nitrox_device *ndev);
29 void nitrox_config_pkt_solicit_ports(struct nitrox_device *ndev);
30 void nitrox_config_vfmode(struct nitrox_device *ndev, int mode);
31 void nitrox_config_nps_unit(struct nitrox_device *ndev);
32 void nitrox_config_pom_unit(struct nitrox_device *ndev);
33 void nitrox_config_rand_unit(struct nitrox_device *ndev);
34 void nitrox_config_efl_unit(struct nitrox_device *ndev);
35 void nitrox_config_bmi_unit(struct nitrox_device *ndev);
36 void nitrox_config_bmo_unit(struct nitrox_device *ndev);
37 void nitrox_config_lbc_unit(struct nitrox_device *ndev);
38 void invalidate_lbc(struct nitrox_device *ndev);
39 void enable_pkt_input_ring(struct nitrox_device *ndev, int ring);
40 void enable_pkt_solicit_port(struct nitrox_device *ndev, int port);
41 
42 #endif /* __NITROX_COMMON_H */
43