[v2,2/2] compressdev: add huffman encoding flags
Checks
Commit Message
Added Huffman fixed and dynamic encoding feature flags,
so an application can query if a device supports
these two types, when performing DEFLATE compression.
Signed-off-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
---
Changes in v2:
- Fixed typo
drivers/compress/isal/isal_compress_pmd_ops.c | 4 +++-
lib/librte_compressdev/rte_comp.c | 4 ++++
lib/librte_compressdev/rte_comp.h | 4 ++++
3 files changed, 11 insertions(+), 1 deletion(-)
Comments
> -----Original Message-----
> From: De Lara Guarch, Pablo
> Sent: Wednesday, June 27, 2018 1:16 PM
> To: Trahe, Fiona <fiona.trahe@intel.com>; ashish.gupta@caviumnetworks.com; Daly, Lee
> <lee.daly@intel.com>
> Cc: dev@dpdk.org; De Lara Guarch, Pablo <pablo.de.lara.guarch@intel.com>
> Subject: [PATCH v2 2/2] compressdev: add huffman encoding flags
>
> Added Huffman fixed and dynamic encoding feature flags,
> so an application can query if a device supports
> these two types, when performing DEFLATE compression.
>
> Signed-off-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
Acked-by: Fiona Trahe <fiona.trahe@intel.com>
@@ -12,7 +12,9 @@
static const struct rte_compressdev_capabilities isal_pmd_capabilities[] = {
{
.algo = RTE_COMP_ALGO_DEFLATE,
- .comp_feature_flags = RTE_COMP_FF_SHAREABLE_PRIV_XFORM,
+ .comp_feature_flags = RTE_COMP_FF_SHAREABLE_PRIV_XFORM |
+ RTE_COMP_FF_HUFFMAN_FIXED |
+ RTE_COMP_FF_HUFFMAN_DYNAMIC,
.window_size = {
.min = 15,
.max = 15,
@@ -36,6 +36,10 @@ rte_comp_get_feature_name(uint64_t flag)
return "SHA2_SHA256_HASH";
case RTE_COMP_FF_SHAREABLE_PRIV_XFORM:
return "SHAREABLE_PRIV_XFORM";
+ case RTE_COMP_FF_HUFFMAN_FIXED:
+ return "HUFFMAN_FIXED";
+ case RTE_COMP_FF_HUFFMAN_DYNAMIC:
+ return "HUFFMAN_DYNAMIC";
default:
return NULL;
}
@@ -62,6 +62,10 @@ extern "C" {
* to create as many priv_xforms as it expects to have stateless
* operations in-flight.
*/
+#define RTE_COMP_FF_HUFFMAN_FIXED (1ULL << 13)
+/**< Fixed huffman encoding is supported */
+#define RTE_COMP_FF_HUFFMAN_DYNAMIC (1ULL << 14)
+/**< Dynamic huffman encoding is supported */
/** Status of comp operation */
enum rte_comp_op_status {