New upstream version 16.11.5
[deb_dpdk.git] / drivers / crypto / qat / qat_crypto.c
index 0fe0b23..a941679 100644 (file)
@@ -76,9 +76,9 @@ static const struct rte_cryptodev_capabilities qat_pmd_capabilities[] = {
                                .algo = RTE_CRYPTO_AUTH_SHA1_HMAC,
                                .block_size = 64,
                                .key_size = {
-                                       .min = 64,
+                                       .min = 1,
                                        .max = 64,
-                                       .increment = 0
+                                       .increment = 1
                                },
                                .digest_size = {
                                        .min = 20,
@@ -97,9 +97,9 @@ static const struct rte_cryptodev_capabilities qat_pmd_capabilities[] = {
                                .algo = RTE_CRYPTO_AUTH_SHA224_HMAC,
                                .block_size = 64,
                                        .key_size = {
-                                       .min = 64,
+                                       .min = 1,
                                        .max = 64,
-                                       .increment = 0
+                                       .increment = 1
                                },
                                .digest_size = {
                                        .min = 28,
@@ -118,9 +118,9 @@ static const struct rte_cryptodev_capabilities qat_pmd_capabilities[] = {
                                .algo = RTE_CRYPTO_AUTH_SHA256_HMAC,
                                .block_size = 64,
                                .key_size = {
-                                       .min = 64,
+                                       .min = 1,
                                        .max = 64,
-                                       .increment = 0
+                                       .increment = 1
                                },
                                .digest_size = {
                                        .min = 32,
@@ -137,11 +137,11 @@ static const struct rte_cryptodev_capabilities qat_pmd_capabilities[] = {
                        .xform_type = RTE_CRYPTO_SYM_XFORM_AUTH,
                        {.auth = {
                                .algo = RTE_CRYPTO_AUTH_SHA384_HMAC,
-                               .block_size = 64,
+                               .block_size = 128,
                                .key_size = {
-                                       .min = 128,
+                                       .min = 1,
                                        .max = 128,
-                                       .increment = 0
+                                       .increment = 1
                                },
                                .digest_size = {
                                        .min = 48,
@@ -160,9 +160,9 @@ static const struct rte_cryptodev_capabilities qat_pmd_capabilities[] = {
                                .algo = RTE_CRYPTO_AUTH_SHA512_HMAC,
                                .block_size = 128,
                                .key_size = {
-                                       .min = 128,
+                                       .min = 1,
                                        .max = 128,
-                                       .increment = 0
+                                       .increment = 1
                                },
                                .digest_size = {
                                        .min = 64,
@@ -181,9 +181,9 @@ static const struct rte_cryptodev_capabilities qat_pmd_capabilities[] = {
                                .algo = RTE_CRYPTO_AUTH_MD5_HMAC,
                                .block_size = 64,
                                .key_size = {
-                                       .min = 8,
+                                       .min = 1,
                                        .max = 64,
-                                       .increment = 8
+                                       .increment = 1
                                },
                                .digest_size = {
                                        .min = 16,
@@ -1085,8 +1085,9 @@ qat_write_hw_desc_entry(struct rte_crypto_op *op, uint8_t *out_msg)
                        ICP_QAT_FW_LA_DIGEST_IN_BUFFER_SET(
                                        qat_req->comn_hdr.serv_specif_flags,
                                        ICP_QAT_FW_LA_NO_DIGEST_IN_BUFFER);
-                       auth_param->auth_res_addr =
-                                       op->sym->auth.digest.phys_addr;
+                       if (likely(ctx->qat_hash_alg != ICP_QAT_HW_AUTH_ALGO_NULL))
+                               auth_param->auth_res_addr =
+                                               op->sym->auth.digest.phys_addr;
                        digest_appended = 0;
                }