Torsten Duwe 1c79ea
From 6f87979129d10cff5b4b0b49343720b99b5357b8 Mon Sep 17 00:00:00 2001
Torsten Duwe 1c79ea
From: Marco Chiappero <marco.chiappero@intel.com>
Torsten Duwe 1c79ea
Date: Thu, 16 Dec 2021 09:13:23 +0000
Torsten Duwe 1c79ea
Subject: [PATCH] crypto: qat - improve the ACK timings in PFVF send
Torsten Duwe 1c79ea
Git-commit: 6f87979129d10cff5b4b0b49343720b99b5357b8
Torsten Duwe 1c79ea
Patch-mainline: v5.17-rc1
Torsten Duwe 1c79ea
References: jsc#PED-1073
Torsten Duwe 1c79ea
Torsten Duwe 1c79ea
Review the ACK timings in adf_gen2_pfvf_send() to improve the latency
Torsten Duwe 1c79ea
by reducing the polling interval. Also increase the timeout, for higher
Torsten Duwe 1c79ea
tolerance in highly loaded systems, and reposition these new values to
Torsten Duwe 1c79ea
allow for inclusion by the future GEN4 devices too.
Torsten Duwe 1c79ea
Torsten Duwe 1c79ea
Signed-off-by: Marco Chiappero <marco.chiappero@intel.com>
Torsten Duwe 1c79ea
Co-developed-by: Giovanni Cabiddu <giovanni.cabiddu@intel.com>
Torsten Duwe 1c79ea
Signed-off-by: Giovanni Cabiddu <giovanni.cabiddu@intel.com>
Torsten Duwe 1c79ea
Reviewed-by: Fiona Trahe <fiona.trahe@intel.com>
Torsten Duwe 1c79ea
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Torsten Duwe 1c79ea
Signed-off-by: Torsten Duwe <duwe@suse.de>
Torsten Duwe 1c79ea
Torsten Duwe 1c79ea
---
Torsten Duwe 1c79ea
 drivers/crypto/qat/qat_common/adf_gen2_pfvf.c  | 3 ---
Torsten Duwe 1c79ea
 drivers/crypto/qat/qat_common/adf_pfvf_utils.h | 4 ++++
Torsten Duwe 1c79ea
 2 files changed, 4 insertions(+), 3 deletions(-)
Torsten Duwe 1c79ea
Torsten Duwe 1c79ea
diff --git a/drivers/crypto/qat/qat_common/adf_gen2_pfvf.c b/drivers/crypto/qat/qat_common/adf_gen2_pfvf.c
Torsten Duwe 1c79ea
index 53c2e124944db..feab01ec4bbb3 100644
Torsten Duwe 1c79ea
--- a/drivers/crypto/qat/qat_common/adf_gen2_pfvf.c
Torsten Duwe 1c79ea
+++ b/drivers/crypto/qat/qat_common/adf_gen2_pfvf.c
Torsten Duwe 1c79ea
@@ -37,9 +37,6 @@ static const struct pfvf_csr_format csr_gen2_fmt = {
Torsten Duwe 1c79ea
 	{ ADF_PFVF_GEN2_MSGDATA_SHIFT, ADF_PFVF_GEN2_MSGDATA_MASK },
Torsten Duwe 1c79ea
 };
Torsten Duwe 1c79ea
 
Torsten Duwe 1c79ea
-#define ADF_PFVF_MSG_ACK_DELAY_US	2000
Torsten Duwe 1c79ea
-#define ADF_PFVF_MSG_ACK_MAX_DELAY_US	(ADF_PFVF_MSG_ACK_DELAY_US * 100)
Torsten Duwe 1c79ea
-
Torsten Duwe 1c79ea
 #define ADF_PFVF_MSG_RETRY_DELAY	5
Torsten Duwe 1c79ea
 #define ADF_PFVF_MSG_MAX_RETRIES	3
Torsten Duwe 1c79ea
 
Torsten Duwe 1c79ea
diff --git a/drivers/crypto/qat/qat_common/adf_pfvf_utils.h b/drivers/crypto/qat/qat_common/adf_pfvf_utils.h
Torsten Duwe 1c79ea
index 7b73b5992d031..7676fdddbe268 100644
Torsten Duwe 1c79ea
--- a/drivers/crypto/qat/qat_common/adf_pfvf_utils.h
Torsten Duwe 1c79ea
+++ b/drivers/crypto/qat/qat_common/adf_pfvf_utils.h
Torsten Duwe 1c79ea
@@ -6,6 +6,10 @@
Torsten Duwe 1c79ea
 #include <linux/types.h>
Torsten Duwe 1c79ea
 #include "adf_pfvf_msg.h"
Torsten Duwe 1c79ea
 
Torsten Duwe 1c79ea
+/* How long to wait for far side to acknowledge receipt */
Torsten Duwe 1c79ea
+#define ADF_PFVF_MSG_ACK_DELAY_US	4
Torsten Duwe 1c79ea
+#define ADF_PFVF_MSG_ACK_MAX_DELAY_US	(1 * USEC_PER_SEC)
Torsten Duwe 1c79ea
+
Torsten Duwe 1c79ea
 struct pfvf_field_format {
Torsten Duwe 1c79ea
 	u8  offset;
Torsten Duwe 1c79ea
 	u32 mask;
Torsten Duwe 1c79ea
-- 
Torsten Duwe 1c79ea
2.35.3
Torsten Duwe 1c79ea