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