Hi Pablo,

> -----Original Message-----
> From: De Lara Guarch, Pablo
> Sent: Wednesday, June 27, 2018 6:51 AM
> To: Trahe, Fiona <fiona.tr...@intel.com>; ashish.gu...@caviumnetworks.com; 
> Daly, Lee
> <lee.d...@intel.com>
> Cc: dev@dpdk.org; De Lara Guarch, Pablo <pablo.de.lara.gua...@intel.com>
> Subject: [PATCH 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.gua...@intel.com>
> ---
>  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(-)
> 
> diff --git a/drivers/compress/isal/isal_compress_pmd_ops.c
> b/drivers/compress/isal/isal_compress_pmd_ops.c
> index 970a0413b..585f22802 100644
> --- a/drivers/compress/isal/isal_compress_pmd_ops.c
> +++ b/drivers/compress/isal/isal_compress_pmd_ops.c
> @@ -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,
> diff --git a/lib/librte_compressdev/rte_comp.c 
> b/lib/librte_compressdev/rte_comp.c
> index ea7692ae7..9711a86c8 100644
> --- a/lib/librte_compressdev/rte_comp.c
> +++ b/lib/librte_compressdev/rte_comp.c
> @@ -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";
[Fiona] Thanks for adding this. 
Just in case any other algos are added in future which also use Huffman 
encoding I'd suggest
renaming to include DEFLATE, e.g. RTE_COMP_FF_DFL_HUFFMAN_FIXED/DYNAMIC


>       default:
>               return NULL;
>       }
> diff --git a/lib/librte_compressdev/rte_comp.h 
> b/lib/librte_compressdev/rte_comp.h
> index 3ce6a80e1..c6a542c0c 100644
> --- a/lib/librte_compressdev/rte_comp.h
> +++ b/lib/librte_compressdev/rte_comp.h
> @@ -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 enconding is supported */
> +#define RTE_COMP_FF_HUFFMAN_DYNAMIC          (1ULL << 14)
> +/**< Dynamic huffman enconding is supported */
[Fiona] typo encoding.

>  /** Status of comp operation */
>  enum rte_comp_op_status {
> --
> 2.14.4

Reply via email to