|
Torsten Duwe |
bd08b3 |
From 16c1ed95d1c4956e428c8daa2783bcc7fa7f6fb9 Mon Sep 17 00:00:00 2001
|
|
Torsten Duwe |
bd08b3 |
From: Giovanni Cabiddu <giovanni.cabiddu@intel.com>
|
|
Torsten Duwe |
bd08b3 |
Date: Mon, 27 Jun 2022 09:36:51 +0100
|
|
Torsten Duwe |
bd08b3 |
Subject: [PATCH] crypto: qat - relocate and rename adf_sriov_prepare_restart()
|
|
Torsten Duwe |
bd08b3 |
Git-commit: 16c1ed95d1c4956e428c8daa2783bcc7fa7f6fb9
|
|
Torsten Duwe |
bd08b3 |
Patch-mainline: v6.0-rc1
|
|
Torsten Duwe |
bd08b3 |
References: jsc#PED-1073
|
|
Torsten Duwe |
bd08b3 |
|
|
Torsten Duwe |
bd08b3 |
The function adf_sriov_prepare_restart() is used in adf_sriov.c to stop
|
|
Torsten Duwe |
bd08b3 |
and shutdown a device preserving its configuration.
|
|
Torsten Duwe |
bd08b3 |
|
|
Torsten Duwe |
bd08b3 |
Since this function will be re-used by the logic that allows to
|
|
Torsten Duwe |
bd08b3 |
reconfigure the device through sysfs, move it to adf_init.c and rename
|
|
Torsten Duwe |
bd08b3 |
it as adf_dev_shutdown_cache_cfg();
|
|
Torsten Duwe |
bd08b3 |
|
|
Torsten Duwe |
bd08b3 |
Signed-off-by: Giovanni Cabiddu <giovanni.cabiddu@intel.com>
|
|
Torsten Duwe |
bd08b3 |
Reviewed-by: Adam Guerin <adam.guerin@intel.com>
|
|
Torsten Duwe |
bd08b3 |
Reviewed-by: Fiona Trahe <fiona.trahe@intel.com>
|
|
Torsten Duwe |
bd08b3 |
Reviewed-by: Wojciech Ziemba <wojciech.ziemba@intel.com>
|
|
Torsten Duwe |
bd08b3 |
Reviewed-by: Vladis Dronov <vdronov@redhat.com>
|
|
Torsten Duwe |
bd08b3 |
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
|
|
Torsten Duwe |
bd08b3 |
Signed-off-by: Torsten Duwe <duwe@suse.de>
|
|
Torsten Duwe |
bd08b3 |
|
|
Torsten Duwe |
bd08b3 |
---
|
|
Torsten Duwe |
bd08b3 |
.../crypto/qat/qat_common/adf_common_drv.h | 1 +
|
|
Torsten Duwe |
bd08b3 |
drivers/crypto/qat/qat_common/adf_init.c | 26 +++++++++++++++++
|
|
Torsten Duwe |
bd08b3 |
drivers/crypto/qat/qat_common/adf_sriov.c | 28 +------------------
|
|
Torsten Duwe |
bd08b3 |
3 files changed, 28 insertions(+), 27 deletions(-)
|
|
Torsten Duwe |
bd08b3 |
|
|
Torsten Duwe |
bd08b3 |
diff --git a/drivers/crypto/qat/qat_common/adf_common_drv.h b/drivers/crypto/qat/qat_common/adf_common_drv.h
|
|
Torsten Duwe |
bd08b3 |
index b841e85c8f5d6..7bb477c3ce25f 100644
|
|
Torsten Duwe |
bd08b3 |
--- a/drivers/crypto/qat/qat_common/adf_common_drv.h
|
|
Torsten Duwe |
bd08b3 |
+++ b/drivers/crypto/qat/qat_common/adf_common_drv.h
|
|
Torsten Duwe |
bd08b3 |
@@ -56,6 +56,7 @@ int adf_dev_init(struct adf_accel_dev *accel_dev);
|
|
Torsten Duwe |
bd08b3 |
int adf_dev_start(struct adf_accel_dev *accel_dev);
|
|
Torsten Duwe |
bd08b3 |
void adf_dev_stop(struct adf_accel_dev *accel_dev);
|
|
Torsten Duwe |
bd08b3 |
void adf_dev_shutdown(struct adf_accel_dev *accel_dev);
|
|
Torsten Duwe |
bd08b3 |
+int adf_dev_shutdown_cache_cfg(struct adf_accel_dev *accel_dev);
|
|
Torsten Duwe |
bd08b3 |
|
|
Torsten Duwe |
bd08b3 |
void adf_devmgr_update_class_index(struct adf_hw_device_data *hw_data);
|
|
Torsten Duwe |
bd08b3 |
void adf_clean_vf_map(bool);
|
|
Torsten Duwe |
bd08b3 |
diff --git a/drivers/crypto/qat/qat_common/adf_init.c b/drivers/crypto/qat/qat_common/adf_init.c
|
|
Torsten Duwe |
bd08b3 |
index c2c718f1b4895..33a9a46d69494 100644
|
|
Torsten Duwe |
bd08b3 |
--- a/drivers/crypto/qat/qat_common/adf_init.c
|
|
Torsten Duwe |
bd08b3 |
+++ b/drivers/crypto/qat/qat_common/adf_init.c
|
|
Torsten Duwe |
bd08b3 |
@@ -363,3 +363,29 @@ int adf_dev_restarted_notify(struct adf_accel_dev *accel_dev)
|
|
Torsten Duwe |
bd08b3 |
}
|
|
Torsten Duwe |
bd08b3 |
return 0;
|
|
Torsten Duwe |
bd08b3 |
}
|
|
Torsten Duwe |
bd08b3 |
+
|
|
Torsten Duwe |
bd08b3 |
+int adf_dev_shutdown_cache_cfg(struct adf_accel_dev *accel_dev)
|
|
Torsten Duwe |
bd08b3 |
+{
|
|
Torsten Duwe |
bd08b3 |
+ char services[ADF_CFG_MAX_VAL_LEN_IN_BYTES] = {0};
|
|
Torsten Duwe |
bd08b3 |
+ int ret;
|
|
Torsten Duwe |
bd08b3 |
+
|
|
Torsten Duwe |
bd08b3 |
+ ret = adf_cfg_get_param_value(accel_dev, ADF_GENERAL_SEC,
|
|
Torsten Duwe |
bd08b3 |
+ ADF_SERVICES_ENABLED, services);
|
|
Torsten Duwe |
bd08b3 |
+
|
|
Torsten Duwe |
bd08b3 |
+ adf_dev_stop(accel_dev);
|
|
Torsten Duwe |
bd08b3 |
+ adf_dev_shutdown(accel_dev);
|
|
Torsten Duwe |
bd08b3 |
+
|
|
Torsten Duwe |
bd08b3 |
+ if (!ret) {
|
|
Torsten Duwe |
bd08b3 |
+ ret = adf_cfg_section_add(accel_dev, ADF_GENERAL_SEC);
|
|
Torsten Duwe |
bd08b3 |
+ if (ret)
|
|
Torsten Duwe |
bd08b3 |
+ return ret;
|
|
Torsten Duwe |
bd08b3 |
+
|
|
Torsten Duwe |
bd08b3 |
+ ret = adf_cfg_add_key_value_param(accel_dev, ADF_GENERAL_SEC,
|
|
Torsten Duwe |
bd08b3 |
+ ADF_SERVICES_ENABLED,
|
|
Torsten Duwe |
bd08b3 |
+ services, ADF_STR);
|
|
Torsten Duwe |
bd08b3 |
+ if (ret)
|
|
Torsten Duwe |
bd08b3 |
+ return ret;
|
|
Torsten Duwe |
bd08b3 |
+ }
|
|
Torsten Duwe |
bd08b3 |
+
|
|
Torsten Duwe |
bd08b3 |
+ return 0;
|
|
Torsten Duwe |
bd08b3 |
+}
|
|
Torsten Duwe |
bd08b3 |
diff --git a/drivers/crypto/qat/qat_common/adf_sriov.c b/drivers/crypto/qat/qat_common/adf_sriov.c
|
|
Torsten Duwe |
bd08b3 |
index f38b2ffde146b..b2db1d70d71fb 100644
|
|
Torsten Duwe |
bd08b3 |
--- a/drivers/crypto/qat/qat_common/adf_sriov.c
|
|
Torsten Duwe |
bd08b3 |
+++ b/drivers/crypto/qat/qat_common/adf_sriov.c
|
|
Torsten Duwe |
bd08b3 |
@@ -120,32 +120,6 @@ void adf_disable_sriov(struct adf_accel_dev *accel_dev)
|
|
Torsten Duwe |
bd08b3 |
}
|
|
Torsten Duwe |
bd08b3 |
EXPORT_SYMBOL_GPL(adf_disable_sriov);
|
|
Torsten Duwe |
bd08b3 |
|
|
Torsten Duwe |
bd08b3 |
-static int adf_sriov_prepare_restart(struct adf_accel_dev *accel_dev)
|
|
Torsten Duwe |
bd08b3 |
-{
|
|
Torsten Duwe |
bd08b3 |
- char services[ADF_CFG_MAX_VAL_LEN_IN_BYTES] = {0};
|
|
Torsten Duwe |
bd08b3 |
- int ret;
|
|
Torsten Duwe |
bd08b3 |
-
|
|
Torsten Duwe |
bd08b3 |
- ret = adf_cfg_get_param_value(accel_dev, ADF_GENERAL_SEC,
|
|
Torsten Duwe |
bd08b3 |
- ADF_SERVICES_ENABLED, services);
|
|
Torsten Duwe |
bd08b3 |
-
|
|
Torsten Duwe |
bd08b3 |
- adf_dev_stop(accel_dev);
|
|
Torsten Duwe |
bd08b3 |
- adf_dev_shutdown(accel_dev);
|
|
Torsten Duwe |
bd08b3 |
-
|
|
Torsten Duwe |
bd08b3 |
- if (!ret) {
|
|
Torsten Duwe |
bd08b3 |
- ret = adf_cfg_section_add(accel_dev, ADF_GENERAL_SEC);
|
|
Torsten Duwe |
bd08b3 |
- if (ret)
|
|
Torsten Duwe |
bd08b3 |
- return ret;
|
|
Torsten Duwe |
bd08b3 |
-
|
|
Torsten Duwe |
bd08b3 |
- ret = adf_cfg_add_key_value_param(accel_dev, ADF_GENERAL_SEC,
|
|
Torsten Duwe |
bd08b3 |
- ADF_SERVICES_ENABLED,
|
|
Torsten Duwe |
bd08b3 |
- services, ADF_STR);
|
|
Torsten Duwe |
bd08b3 |
- if (ret)
|
|
Torsten Duwe |
bd08b3 |
- return ret;
|
|
Torsten Duwe |
bd08b3 |
- }
|
|
Torsten Duwe |
bd08b3 |
-
|
|
Torsten Duwe |
bd08b3 |
- return 0;
|
|
Torsten Duwe |
bd08b3 |
-}
|
|
Torsten Duwe |
bd08b3 |
-
|
|
Torsten Duwe |
bd08b3 |
/**
|
|
Torsten Duwe |
bd08b3 |
* adf_sriov_configure() - Enable SRIOV for the device
|
|
Torsten Duwe |
bd08b3 |
* @pdev: Pointer to PCI device.
|
|
Torsten Duwe |
bd08b3 |
@@ -185,7 +159,7 @@ int adf_sriov_configure(struct pci_dev *pdev, int numvfs)
|
|
Torsten Duwe |
bd08b3 |
return -EBUSY;
|
|
Torsten Duwe |
bd08b3 |
}
|
|
Torsten Duwe |
bd08b3 |
|
|
Torsten Duwe |
bd08b3 |
- ret = adf_sriov_prepare_restart(accel_dev);
|
|
Torsten Duwe |
bd08b3 |
+ ret = adf_dev_shutdown_cache_cfg(accel_dev);
|
|
Torsten Duwe |
bd08b3 |
if (ret)
|
|
Torsten Duwe |
bd08b3 |
return ret;
|
|
Torsten Duwe |
bd08b3 |
}
|
|
Torsten Duwe |
bd08b3 |
--
|
|
Torsten Duwe |
bd08b3 |
2.35.3
|
|
Torsten Duwe |
bd08b3 |
|