Series- Acked-by: Hemant Agrawal <hemant.agra...@nxp.com> -----Original Message----- From: Akhil Goyal <akhil.go...@nxp.com> Sent: Tuesday, July 7, 2020 12:05 AM To: dev@dpdk.org; Hemant Agrawal <hemant.agra...@nxp.com> Cc: Akhil Goyal <akhil.go...@nxp.com> Subject: [PATCH 1/4] crypto/dpaax_sec: fix inline query for descriptors
The maximum length of job descriptor which is formed is 13 words and hence rta_inline_query should take care of the max descriptor(shared + job) lengths and thus find out of the key can be referenced or immediate. Signed-off-by: Akhil Goyal <akhil.go...@nxp.com> --- drivers/common/dpaax/caamflib/desc.h | 2 +- drivers/crypto/dpaa2_sec/dpaa2_sec_dpseci.c | 4 ++-- drivers/crypto/dpaa_sec/dpaa_sec.c | 4 ++-- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/drivers/common/dpaax/caamflib/desc.h b/drivers/common/dpaax/caamflib/desc.h index e4139aaa9..635d6bad0 100644 --- a/drivers/common/dpaax/caamflib/desc.h +++ b/drivers/common/dpaax/caamflib/desc.h @@ -26,7 +26,7 @@ extern enum rta_sec_era rta_sec_era; #define CAAM_CMD_SZ sizeof(uint32_t) #define CAAM_PTR_SZ sizeof(dma_addr_t) #define CAAM_DESC_BYTES_MAX (CAAM_CMD_SZ * MAX_CAAM_DESCSIZE) -#define DESC_JOB_IO_LEN (CAAM_CMD_SZ * 5 + CAAM_PTR_SZ * 3) +#define DESC_JOB_IO_LEN (CAAM_CMD_SZ * 7 + CAAM_PTR_SZ * 3) /* Block size of any entity covered/uncovered with a KEK/TKEK */ #define KEK_BLOCKSIZE 16 diff --git a/drivers/crypto/dpaa2_sec/dpaa2_sec_dpseci.c b/drivers/crypto/dpaa2_sec/dpaa2_sec_dpseci.c index 60fdced78..c56fb2152 100644 --- a/drivers/crypto/dpaa2_sec/dpaa2_sec_dpseci.c +++ b/drivers/crypto/dpaa2_sec/dpaa2_sec_dpseci.c @@ -2192,7 +2192,7 @@ dpaa2_sec_aead_init(struct rte_cryptodev *dev, priv->flc_desc[0].desc[0] = aeaddata.keylen; err = rta_inline_query(IPSEC_AUTH_VAR_AES_DEC_BASE_DESC_LEN, - MIN_JOB_DESC_SIZE, + DESC_JOB_IO_LEN, (unsigned int *)priv->flc_desc[0].desc, &priv->flc_desc[0].desc[1], 1); @@ -2416,7 +2416,7 @@ dpaa2_sec_aead_chain_init(struct rte_cryptodev *dev, priv->flc_desc[0].desc[0] = cipherdata.keylen; priv->flc_desc[0].desc[1] = authdata.keylen; err = rta_inline_query(IPSEC_AUTH_VAR_AES_DEC_BASE_DESC_LEN, - MIN_JOB_DESC_SIZE, + DESC_JOB_IO_LEN, (unsigned int *)priv->flc_desc[0].desc, &priv->flc_desc[0].desc[2], 2); diff --git a/drivers/crypto/dpaa_sec/dpaa_sec.c b/drivers/crypto/dpaa_sec/dpaa_sec.c index 01e79c8ea..5ce7e3582 100644 --- a/drivers/crypto/dpaa_sec/dpaa_sec.c +++ b/drivers/crypto/dpaa_sec/dpaa_sec.c @@ -351,7 +351,7 @@ dpaa_sec_prep_ipsec_cdb(dpaa_sec_session *ses) cdb->sh_desc[0] = cipherdata.keylen; cdb->sh_desc[1] = authdata.keylen; err = rta_inline_query(IPSEC_AUTH_VAR_AES_DEC_BASE_DESC_LEN, - MIN_JOB_DESC_SIZE, + DESC_JOB_IO_LEN, (unsigned int *)cdb->sh_desc, &cdb->sh_desc[2], 2); @@ -537,7 +537,7 @@ dpaa_sec_prep_cdb(dpaa_sec_session *ses) cdb->sh_desc[0] = alginfo_c.keylen; cdb->sh_desc[1] = alginfo_a.keylen; err = rta_inline_query(IPSEC_AUTH_VAR_AES_DEC_BASE_DESC_LEN, - MIN_JOB_DESC_SIZE, + DESC_JOB_IO_LEN, (unsigned int *)cdb->sh_desc, &cdb->sh_desc[2], 2); -- 2.17.1