crypto: hisilicon/qm - remove hisi_qm_get_free_qp_num()
authorWeili Qian <qianweili@huawei.com>
Sat, 16 Apr 2022 10:45:59 +0000 (18:45 +0800)
committerHerbert Xu <herbert@gondor.apana.org.au>
Thu, 21 Apr 2022 09:53:56 +0000 (17:53 +0800)
hisi_qm_get_free_qp_num() is to get the free queue number on the function.
It is a simple function and is only called by
hisi_qm_get_available_instances().

This patch modifies to get the free queue directly in
hisi_qm_get_available_instances(), and remove hisi_qm_get_free_qp_num().

Signed-off-by: Weili Qian <qianweili@huawei.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
drivers/crypto/hisilicon/qm.c
include/linux/hisi_acc_qm.h

index 2865500..b4ca2eb 100644 (file)
@@ -3226,9 +3226,17 @@ static void qm_qp_event_notifier(struct hisi_qp *qp)
        wake_up_interruptible(&qp->uacce_q->wait);
 }
 
+ /* This function returns free number of qp in qm. */
 static int hisi_qm_get_available_instances(struct uacce_device *uacce)
 {
-       return hisi_qm_get_free_qp_num(uacce->priv);
+       struct hisi_qm *qm = uacce->priv;
+       int ret;
+
+       down_read(&qm->qps_lock);
+       ret = qm->qp_num - qm->qp_in_used;
+       up_read(&qm->qps_lock);
+
+       return ret;
 }
 
 static void hisi_qm_set_hw_reset(struct hisi_qm *qm, int offset)
@@ -3540,24 +3548,6 @@ void hisi_qm_wait_task_finish(struct hisi_qm *qm, struct hisi_qm_list *qm_list)
 }
 EXPORT_SYMBOL_GPL(hisi_qm_wait_task_finish);
 
-/**
- * hisi_qm_get_free_qp_num() - Get free number of qp in qm.
- * @qm: The qm which want to get free qp.
- *
- * This function return free number of qp in qm.
- */
-int hisi_qm_get_free_qp_num(struct hisi_qm *qm)
-{
-       int ret;
-
-       down_read(&qm->qps_lock);
-       ret = qm->qp_num - qm->qp_in_used;
-       up_read(&qm->qps_lock);
-
-       return ret;
-}
-EXPORT_SYMBOL_GPL(hisi_qm_get_free_qp_num);
-
 static void hisi_qp_memory_uninit(struct hisi_qm *qm, int num)
 {
        struct device *dev = &qm->pdev->dev;
index d2ccb11..6cabaff 100644 (file)
@@ -448,7 +448,6 @@ int hisi_qm_stop(struct hisi_qm *qm, enum qm_stop_reason r);
 int hisi_qm_start_qp(struct hisi_qp *qp, unsigned long arg);
 int hisi_qm_stop_qp(struct hisi_qp *qp);
 int hisi_qp_send(struct hisi_qp *qp, const void *msg);
-int hisi_qm_get_free_qp_num(struct hisi_qm *qm);
 void hisi_qm_debug_init(struct hisi_qm *qm);
 void hisi_qm_debug_regs_clear(struct hisi_qm *qm);
 int hisi_qm_sriov_enable(struct pci_dev *pdev, int max_vfs);