[dpdk-dev v1] crypto/qat: fix QAT GEN4 AEAD job in raw data path
Kai Ji
kai.ji at intel.com
Fri Jan 21 11:38:30 CET 2022
This patch fix the cipher params configuration in AEAD job if
QAT GEN4 unified cipher slice(UCS) enabled.
Fixes: 328d690d2f60 ("crypto/qat: update raw data path")
Cc: roy.fan.zhang at intel.com
Signed-off-by: Kai Ji <kai.ji at intel.com>
---
drivers/crypto/qat/qat_sym_hw_dp.c | 16 ++++++++++++++--
1 file changed, 14 insertions(+), 2 deletions(-)
diff --git a/drivers/crypto/qat/qat_sym_hw_dp.c b/drivers/crypto/qat/qat_sym_hw_dp.c
index 12825e448b..792ad2b213 100644
--- a/drivers/crypto/qat/qat_sym_hw_dp.c
+++ b/drivers/crypto/qat/qat_sym_hw_dp.c
@@ -533,8 +533,20 @@ enqueue_one_aead_job(struct qat_sym_session *ctx,
/* CPM 1.7 uses single pass to treat AEAD as cipher operation */
if (ctx->is_single_pass) {
enqueue_one_cipher_job(ctx, req, iv, ofs, data_len);
- cipher_param->spc_aad_addr = aad->iova;
- cipher_param->spc_auth_res_addr = digest->iova;
+
+ if (ctx->is_ucs) {
+ /* QAT GEN4 uses single pass to treat AEAD as cipher
+ * operation
+ */
+ struct icp_qat_fw_la_cipher_20_req_params *cipher_param_20 =
+ (void *)&req->serv_specif_rqpars;
+ cipher_param_20->spc_aad_addr = aad->iova;
+ cipher_param_20->spc_auth_res_addr = digest->iova;
+ } else {
+ cipher_param->spc_aad_addr = aad->iova;
+ cipher_param->spc_auth_res_addr = digest->iova;
+ }
+
return;
}
--
2.30.2
More information about the stable
mailing list