X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;f=drivers%2Fcompress%2Fzlib%2Fzlib_pmd_private.h;h=e36c5dc615077111d5749e1727a9356f77c99bc4;hb=29dc10d9424ccf26a346387b0a707185e2432400;hp=d26a740d313507b39d95cf3a6d92165ddec8b692;hpb=0c4e4c16b0049ef5d0d2a7bb49d4ab653f7f14b6;p=dpdk.git diff --git a/drivers/compress/zlib/zlib_pmd_private.h b/drivers/compress/zlib/zlib_pmd_private.h index d26a740d31..e36c5dc615 100644 --- a/drivers/compress/zlib/zlib_pmd_private.h +++ b/drivers/compress/zlib/zlib_pmd_private.h @@ -2,8 +2,8 @@ * Copyright(c) 2018 Cavium Networks */ -#ifndef _RTE_ZLIB_PMD_PRIVATE_H_ -#define _RTE_ZLIB_PMD_PRIVATE_H_ +#ifndef _ZLIB_PMD_PRIVATE_H_ +#define _ZLIB_PMD_PRIVATE_H_ #include #include @@ -14,7 +14,7 @@ #define DEF_MEM_LEVEL 8 -int zlib_logtype_driver; +extern int zlib_logtype_driver; #define ZLIB_PMD_LOG(level, fmt, args...) \ rte_log(RTE_LOG_ ## level, zlib_logtype_driver, "%s(): "fmt "\n", \ __func__, ##args) @@ -27,6 +27,45 @@ int zlib_logtype_driver; ZLIB_PMD_LOG(WARNING, fmt, ## args) struct zlib_private { + struct rte_mempool *mp; }; -#endif /* _RTE_ZLIB_PMD_PRIVATE_H_ */ +struct zlib_qp { + struct rte_ring *processed_pkts; + /**< Ring for placing process packets */ + struct rte_compressdev_stats qp_stats; + /**< Queue pair statistics */ + uint16_t id; + /**< Queue Pair Identifier */ + char name[RTE_COMPRESSDEV_NAME_MAX_LEN]; + /**< Unique Queue Pair Name */ +} __rte_cache_aligned; + +/* Algorithm handler function prototype */ +typedef void (*comp_func_t)(struct rte_comp_op *op, z_stream *strm); + +typedef int (*comp_free_t)(z_stream *strm); + +/** ZLIB Stream structure */ +struct zlib_stream { + z_stream strm; + /**< zlib stream structure */ + comp_func_t comp; + /**< Operation (compression/decompression) */ + comp_free_t free; + /**< Free Operation (compression/decompression) */ +} __rte_cache_aligned; + +/** ZLIB private xform structure */ +struct zlib_priv_xform { + struct zlib_stream stream; +} __rte_cache_aligned; + +int +zlib_set_stream_parameters(const struct rte_comp_xform *xform, + struct zlib_stream *stream); + +/** Device specific operations function pointer structure */ +extern struct rte_compressdev_ops *rte_zlib_pmd_ops; + +#endif /* _ZLIB_PMD_PRIVATE_H_ */