summaryrefslogtreecommitdiffstats
path: root/drivers/crypto/hisilicon/qm.h
diff options
context:
space:
mode:
authorWeili Qian <qianweili@huawei.com>2020-05-20 17:19:50 +0800
committerHerbert Xu <herbert@gondor.apana.org.au>2020-05-28 17:27:52 +1000
commit58ca0060ec4e51208d2eee12198fc55fd9e4feb3 (patch)
treed295ec2dfd80b6f6338ed852180c444dea487257 /drivers/crypto/hisilicon/qm.h
parentd1c72f6e4c051620f44b170dff991240117dd911 (diff)
downloadlinux-58ca0060ec4e51208d2eee12198fc55fd9e4feb3.tar.bz2
crypto: hisilicon - fix driver compatibility issue with different versions of devices
In order to be compatible with devices of different versions, V1 in the accelerator driver is now isolated, and other versions are the previous V2 processing flow. Signed-off-by: Weili Qian <qianweili@huawei.com> Signed-off-by: Shukun Tan <tanshukun1@huawei.com> Reviewed-by: Zhou Wang <wangzhou1@hisilicon.com> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Diffstat (limited to 'drivers/crypto/hisilicon/qm.h')
-rw-r--r--drivers/crypto/hisilicon/qm.h13
1 files changed, 3 insertions, 10 deletions
diff --git a/drivers/crypto/hisilicon/qm.h b/drivers/crypto/hisilicon/qm.h
index 632674423c04..0a351de8d838 100644
--- a/drivers/crypto/hisilicon/qm.h
+++ b/drivers/crypto/hisilicon/qm.h
@@ -108,6 +108,7 @@ enum qm_hw_ver {
QM_HW_UNKNOWN = -1,
QM_HW_V1 = 0x20,
QM_HW_V2 = 0x21,
+ QM_HW_V3 = 0x30,
};
enum qm_fun_type {
@@ -287,7 +288,6 @@ static inline int q_num_set(const char *val, const struct kernel_param *kp,
struct pci_dev *pdev = pci_get_device(PCI_VENDOR_ID_HUAWEI,
device, NULL);
u32 n, q_num;
- u8 rev_id;
int ret;
if (!val)
@@ -298,17 +298,10 @@ static inline int q_num_set(const char *val, const struct kernel_param *kp,
pr_info("No device found currently, suppose queue number is %d\n",
q_num);
} else {
- rev_id = pdev->revision;
- switch (rev_id) {
- case QM_HW_V1:
+ if (pdev->revision == QM_HW_V1)
q_num = QM_QNUM_V1;
- break;
- case QM_HW_V2:
+ else
q_num = QM_QNUM_V2;
- break;
- default:
- return -EINVAL;
- }
}
ret = kstrtou32(val, 10, &n);