summaryrefslogtreecommitdiffstats
path: root/drivers/crypto/intel/qat/qat_common/adf_common_drv.h
diff options
context:
space:
mode:
authorDamian Muszynski <damian.muszynski@intel.com>2024-02-02 18:53:22 +0800
committerHerbert Xu <herbert@gondor.apana.org.au>2024-02-09 12:57:18 +0800
commitf5419a4239af8b3951f990c83d0d8c865a485475 (patch)
treea0d1258e3e5c735f7239adb411bc0df5008804e4 /drivers/crypto/intel/qat/qat_common/adf_common_drv.h
parent2aaa1995a94a3187e52ddb9f127fa1307ee8ad00 (diff)
downloadlinux-stable-f5419a4239af8b3951f990c83d0d8c865a485475.tar.gz
linux-stable-f5419a4239af8b3951f990c83d0d8c865a485475.tar.bz2
linux-stable-f5419a4239af8b3951f990c83d0d8c865a485475.zip
crypto: qat - add auto reset on error
Expose the `auto_reset` sysfs attribute to configure the driver to reset the device when a fatal error is detected. When auto reset is enabled, the driver resets the device when it detects either an heartbeat failure or a fatal error through an interrupt. This patch is based on earlier work done by Shashank Gupta. Signed-off-by: Damian Muszynski <damian.muszynski@intel.com> Reviewed-by: Ahsan Atta <ahsan.atta@intel.com> Reviewed-by: Markas Rapoportas <markas.rapoportas@intel.com> Reviewed-by: Giovanni Cabiddu <giovanni.cabiddu@intel.com> Signed-off-by: Mun Chun Yep <mun.chun.yep@intel.com> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Diffstat (limited to 'drivers/crypto/intel/qat/qat_common/adf_common_drv.h')
-rw-r--r--drivers/crypto/intel/qat/qat_common/adf_common_drv.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/crypto/intel/qat/qat_common/adf_common_drv.h b/drivers/crypto/intel/qat/qat_common/adf_common_drv.h
index 10891c9da6e7..57328249c89e 100644
--- a/drivers/crypto/intel/qat/qat_common/adf_common_drv.h
+++ b/drivers/crypto/intel/qat/qat_common/adf_common_drv.h
@@ -87,6 +87,7 @@ int adf_ae_stop(struct adf_accel_dev *accel_dev);
extern const struct pci_error_handlers adf_err_handler;
void adf_reset_sbr(struct adf_accel_dev *accel_dev);
void adf_reset_flr(struct adf_accel_dev *accel_dev);
+int adf_dev_autoreset(struct adf_accel_dev *accel_dev);
void adf_dev_restore(struct adf_accel_dev *accel_dev);
int adf_init_aer(void);
void adf_exit_aer(void);