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