xref: /dpdk/drivers/compress/nitrox/nitrox_comp.h (revision 6ea6bcdd7081b0712812046cb4d21a8994273fbd)
1 /* SPDX-License-Identifier: BSD-3-Clause
2  * Copyright(C) 2024 Marvell.
3  */
4 
5 #ifndef _NITROX_COMP_H_
6 #define _NITROX_COMP_H_
7 
8 #define COMPRESSDEV_NAME_NITROX_PMD	compress_nitrox
9 #define NITROX_DECOMP_CTX_SIZE 2048
10 #define NITROX_CONSTANTS_MAX_SEARCH_DEPTH 31744
11 #define NITROX_DEFAULT_DEFLATE_SEARCH_DEPTH 32768
12 #define NITROX_COMP_WINDOW_SIZE_MIN 1
13 #define NITROX_COMP_WINDOW_SIZE_MAX 15
14 #define NITROX_COMP_LEVEL_LOWEST_START 1
15 #define NITROX_COMP_LEVEL_LOWEST_END 2
16 #define NITROX_COMP_LEVEL_LOWER_START 3
17 #define NITROX_COMP_LEVEL_LOWER_END 4
18 #define NITROX_COMP_LEVEL_MEDIUM_START 5
19 #define NITROX_COMP_LEVEL_MEDIUM_END 6
20 #define NITROX_COMP_LEVEL_BEST_START 7
21 #define NITROX_COMP_LEVEL_BEST_END 9
22 #define ZIP_INSTR_SIZE 64
23 
24 struct nitrox_comp_device {
25 	struct rte_compressdev *cdev;
26 	struct nitrox_device *ndev;
27 	struct rte_mempool *xform_pool;
28 };
29 
30 struct nitrox_device;
31 
32 int nitrox_comp_pmd_create(struct nitrox_device *ndev);
33 int nitrox_comp_pmd_destroy(struct nitrox_device *ndev);
34 
35 #endif /* _NITROX_COMP_H_ */
36