|
Torsten Duwe |
7b66f0 |
From c79391c696da0151c6ec8cb8a31edfa8bbe68f24 Mon Sep 17 00:00:00 2001
|
|
Torsten Duwe |
7b66f0 |
From: Giovanni Cabiddu <giovanni.cabiddu@intel.com>
|
|
Torsten Duwe |
7b66f0 |
Date: Wed, 17 Nov 2021 14:30:34 +0000
|
|
Torsten Duwe |
7b66f0 |
Subject: [PATCH] crypto: qat - do not handle PFVF sources for qat_4xxx
|
|
Torsten Duwe |
7b66f0 |
Git-commit: c79391c696da0151c6ec8cb8a31edfa8bbe68f24
|
|
Torsten Duwe |
7b66f0 |
Patch-mainline: v5.17-rc1
|
|
Torsten Duwe |
7b66f0 |
References: jsc#PED-1073
|
|
Torsten Duwe |
7b66f0 |
|
|
Torsten Duwe |
7b66f0 |
The QAT driver does not have support for PFVF interrupts for GEN4
|
|
Torsten Duwe |
7b66f0 |
devices, therefore report the vf2pf sources as 0.
|
|
Torsten Duwe |
7b66f0 |
This prevents a NULL pointer dereference in the function
|
|
Torsten Duwe |
7b66f0 |
adf_msix_isr_ae() if the device triggers a spurious interrupt.
|
|
Torsten Duwe |
7b66f0 |
|
|
Torsten Duwe |
7b66f0 |
Fixes: 993161d36ab5 ("crypto: qat - fix handling of VF to PF interrupts")
|
|
Torsten Duwe |
7b66f0 |
Reported-by: Adam Guerin <adam.guerin@intel.com>
|
|
Torsten Duwe |
7b66f0 |
Signed-off-by: Giovanni Cabiddu <giovanni.cabiddu@intel.com>
|
|
Torsten Duwe |
7b66f0 |
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
|
|
Torsten Duwe |
7b66f0 |
Signed-off-by: Torsten Duwe <duwe@suse.de>
|
|
Torsten Duwe |
7b66f0 |
|
|
Torsten Duwe |
7b66f0 |
---
|
|
Torsten Duwe |
7b66f0 |
drivers/crypto/qat/qat_4xxx/adf_4xxx_hw_data.c | 7 +++++++
|
|
Torsten Duwe |
7b66f0 |
1 file changed, 7 insertions(+)
|
|
Torsten Duwe |
7b66f0 |
|
|
Torsten Duwe |
7b66f0 |
diff --git a/drivers/crypto/qat/qat_4xxx/adf_4xxx_hw_data.c b/drivers/crypto/qat/qat_4xxx/adf_4xxx_hw_data.c
|
|
Torsten Duwe |
7b66f0 |
index fa768f10635fd..fd29861526d6b 100644
|
|
Torsten Duwe |
7b66f0 |
--- a/drivers/crypto/qat/qat_4xxx/adf_4xxx_hw_data.c
|
|
Torsten Duwe |
7b66f0 |
+++ b/drivers/crypto/qat/qat_4xxx/adf_4xxx_hw_data.c
|
|
Torsten Duwe |
7b66f0 |
@@ -211,6 +211,12 @@ static u32 uof_get_ae_mask(u32 obj_num)
|
|
Torsten Duwe |
7b66f0 |
return adf_4xxx_fw_config[obj_num].ae_mask;
|
|
Torsten Duwe |
7b66f0 |
}
|
|
Torsten Duwe |
7b66f0 |
|
|
Torsten Duwe |
7b66f0 |
+static u32 get_vf2pf_sources(void __iomem *pmisc_addr)
|
|
Torsten Duwe |
7b66f0 |
+{
|
|
Torsten Duwe |
7b66f0 |
+ /* For the moment do not report vf2pf sources */
|
|
Torsten Duwe |
7b66f0 |
+ return 0;
|
|
Torsten Duwe |
7b66f0 |
+}
|
|
Torsten Duwe |
7b66f0 |
+
|
|
Torsten Duwe |
7b66f0 |
void adf_init_hw_data_4xxx(struct adf_hw_device_data *hw_data)
|
|
Torsten Duwe |
7b66f0 |
{
|
|
Torsten Duwe |
7b66f0 |
hw_data->dev_class = &adf_4xxx_class;
|
|
Torsten Duwe |
7b66f0 |
@@ -254,6 +260,7 @@ void adf_init_hw_data_4xxx(struct adf_hw_device_data *hw_data)
|
|
Torsten Duwe |
7b66f0 |
hw_data->set_msix_rttable = set_msix_default_rttable;
|
|
Torsten Duwe |
7b66f0 |
hw_data->set_ssm_wdtimer = adf_gen4_set_ssm_wdtimer;
|
|
Torsten Duwe |
7b66f0 |
hw_data->enable_pfvf_comms = pfvf_comms_disabled;
|
|
Torsten Duwe |
7b66f0 |
+ hw_data->get_vf2pf_sources = get_vf2pf_sources;
|
|
Torsten Duwe |
7b66f0 |
hw_data->disable_iov = adf_disable_sriov;
|
|
Torsten Duwe |
7b66f0 |
hw_data->min_iov_compat_ver = ADF_PFVF_COMPAT_THIS_VERSION;
|
|
Torsten Duwe |
7b66f0 |
|
|
Torsten Duwe |
7b66f0 |
--
|
|
Torsten Duwe |
7b66f0 |
2.35.3
|
|
Torsten Duwe |
7b66f0 |
|