Torsten Duwe 679f44
From fbdab61af2d02ebf9c015458c95e34b54dea9027 Mon Sep 17 00:00:00 2001
Torsten Duwe 679f44
From: Giovanni Cabiddu <giovanni.cabiddu@intel.com>
Torsten Duwe 679f44
Date: Tue, 10 May 2022 17:54:19 +0100
Torsten Duwe 679f44
Subject: [PATCH] crypto: qat - add support for 401xx devices
Torsten Duwe 679f44
Git-commit: fbdab61af2d02ebf9c015458c95e34b54dea9027
Torsten Duwe 679f44
Patch-mainline: v5.19-rc1
Torsten Duwe 679f44
References: jsc#PED-1073
Torsten Duwe 679f44
Torsten Duwe 679f44
QAT_401xx is a derivative of 4xxx. Add support for that device in the
Torsten Duwe 679f44
qat_4xxx driver by including the DIDs (both PF and VF), extending the
Torsten Duwe 679f44
probe and the firmware loader.
Torsten Duwe 679f44
Torsten Duwe 679f44
Signed-off-by: Giovanni Cabiddu <giovanni.cabiddu@intel.com>
Torsten Duwe 679f44
Reviewed-by: Srinivas Kerekare <srinivas.kerekare@intel.com>
Torsten Duwe 679f44
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Torsten Duwe 679f44
Signed-off-by: Torsten Duwe <duwe@suse.de>
Torsten Duwe 679f44
Torsten Duwe 679f44
---
Torsten Duwe 679f44
 drivers/crypto/qat/qat_4xxx/adf_drv.c             | 1 +
Torsten Duwe 679f44
 drivers/crypto/qat/qat_common/adf_accel_devices.h | 2 ++
Torsten Duwe 679f44
 drivers/crypto/qat/qat_common/qat_hal.c           | 1 +
Torsten Duwe 679f44
 drivers/crypto/qat/qat_common/qat_uclo.c          | 1 +
Torsten Duwe 679f44
 4 files changed, 5 insertions(+)
Torsten Duwe 679f44
Torsten Duwe 679f44
diff --git a/drivers/crypto/qat/qat_4xxx/adf_drv.c b/drivers/crypto/qat/qat_4xxx/adf_drv.c
Torsten Duwe 679f44
index a6c78b9c730bc..181fa1c8b3c78 100644
Torsten Duwe 679f44
--- a/drivers/crypto/qat/qat_4xxx/adf_drv.c
Torsten Duwe 679f44
+++ b/drivers/crypto/qat/qat_4xxx/adf_drv.c
Torsten Duwe 679f44
@@ -14,6 +14,7 @@
Torsten Duwe 679f44
 
Torsten Duwe 679f44
 static const struct pci_device_id adf_pci_tbl[] = {
Torsten Duwe 679f44
 	{ PCI_VDEVICE(INTEL, ADF_4XXX_PCI_DEVICE_ID), },
Torsten Duwe 679f44
+	{ PCI_VDEVICE(INTEL, ADF_401XX_PCI_DEVICE_ID), },
Torsten Duwe 679f44
 	{ }
Torsten Duwe 679f44
 };
Torsten Duwe 679f44
 MODULE_DEVICE_TABLE(pci, adf_pci_tbl);
Torsten Duwe 679f44
diff --git a/drivers/crypto/qat/qat_common/adf_accel_devices.h b/drivers/crypto/qat/qat_common/adf_accel_devices.h
Torsten Duwe 679f44
index e927799a8e6c4..ede6458c9dbfd 100644
Torsten Duwe 679f44
--- a/drivers/crypto/qat/qat_common/adf_accel_devices.h
Torsten Duwe 679f44
+++ b/drivers/crypto/qat/qat_common/adf_accel_devices.h
Torsten Duwe 679f44
@@ -19,6 +19,8 @@
Torsten Duwe 679f44
 #define ADF_4XXX_DEVICE_NAME "4xxx"
Torsten Duwe 679f44
 #define ADF_4XXX_PCI_DEVICE_ID 0x4940
Torsten Duwe 679f44
 #define ADF_4XXXIOV_PCI_DEVICE_ID 0x4941
Torsten Duwe 679f44
+#define ADF_401XX_PCI_DEVICE_ID 0x4942
Torsten Duwe 679f44
+#define ADF_401XXIOV_PCI_DEVICE_ID 0x4943
Torsten Duwe 679f44
 #define ADF_DEVICE_FUSECTL_OFFSET 0x40
Torsten Duwe 679f44
 #define ADF_DEVICE_LEGFUSE_OFFSET 0x4C
Torsten Duwe 679f44
 #define ADF_DEVICE_FUSECTL_MASK 0x80000000
Torsten Duwe 679f44
diff --git a/drivers/crypto/qat/qat_common/qat_hal.c b/drivers/crypto/qat/qat_common/qat_hal.c
Torsten Duwe 679f44
index 4bfd8f3566f7a..7bba35280dacc 100644
Torsten Duwe 679f44
--- a/drivers/crypto/qat/qat_common/qat_hal.c
Torsten Duwe 679f44
+++ b/drivers/crypto/qat/qat_common/qat_hal.c
Torsten Duwe 679f44
@@ -695,6 +695,7 @@ static int qat_hal_chip_init(struct icp_qat_fw_loader_handle *handle,
Torsten Duwe 679f44
 	handle->pci_dev = pci_info->pci_dev;
Torsten Duwe 679f44
 	switch (handle->pci_dev->device) {
Torsten Duwe 679f44
 	case ADF_4XXX_PCI_DEVICE_ID:
Torsten Duwe 679f44
+	case ADF_401XX_PCI_DEVICE_ID:
Torsten Duwe 679f44
 		handle->chip_info->mmp_sram_size = 0;
Torsten Duwe 679f44
 		handle->chip_info->nn = false;
Torsten Duwe 679f44
 		handle->chip_info->lm2lm3 = true;
Torsten Duwe 679f44
diff --git a/drivers/crypto/qat/qat_common/qat_uclo.c b/drivers/crypto/qat/qat_common/qat_uclo.c
Torsten Duwe 679f44
index 4b6f37d6e85b5..0fe5a474aa452 100644
Torsten Duwe 679f44
--- a/drivers/crypto/qat/qat_common/qat_uclo.c
Torsten Duwe 679f44
+++ b/drivers/crypto/qat/qat_common/qat_uclo.c
Torsten Duwe 679f44
@@ -731,6 +731,7 @@ qat_uclo_get_dev_type(struct icp_qat_fw_loader_handle *handle)
Torsten Duwe 679f44
 	case PCI_DEVICE_ID_INTEL_QAT_C3XXX:
Torsten Duwe 679f44
 		return ICP_QAT_AC_C3XXX_DEV_TYPE;
Torsten Duwe 679f44
 	case ADF_4XXX_PCI_DEVICE_ID:
Torsten Duwe 679f44
+	case ADF_401XX_PCI_DEVICE_ID:
Torsten Duwe 679f44
 		return ICP_QAT_AC_4XXX_A_DEV_TYPE;
Torsten Duwe 679f44
 	default:
Torsten Duwe 679f44
 		pr_err("QAT: unsupported device 0x%x\n",
Torsten Duwe 679f44
-- 
Torsten Duwe 679f44
2.35.3
Torsten Duwe 679f44