[PATCH] driver: hva: add pm_runtime_disable in the error handling code of hva_hw_probe

From: Dongliang Mu
Date: Mon Oct 18 2021 - 23:00:46 EST


In the error handling code of hva_hw_probe, it fails to invoke
pm_runtime_disable in many error sites.

Fix this by adding a label err_disable with pm_runtime_disable and
adjust one goto from label err_clk to err_disable.

Signed-off-by: Dongliang Mu <mudongliangabcd@xxxxxxxxx>
---
drivers/media/platform/sti/hva/hva-hw.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/drivers/media/platform/sti/hva/hva-hw.c b/drivers/media/platform/sti/hva/hva-hw.c
index 30fb1aa4a351..5dd5dbf59cfe 100644
--- a/drivers/media/platform/sti/hva/hva-hw.c
+++ b/drivers/media/platform/sti/hva/hva-hw.c
@@ -387,7 +387,7 @@ int hva_hw_probe(struct platform_device *pdev, struct hva_dev *hva)
ret = pm_runtime_resume_and_get(dev);
if (ret < 0) {
dev_err(dev, "%s failed to set PM\n", HVA_PREFIX);
- goto err_clk;
+ goto err_disable;
}

/* check IP hardware version */
@@ -405,6 +405,8 @@ int hva_hw_probe(struct platform_device *pdev, struct hva_dev *hva)

err_pm:
pm_runtime_put(dev);
+err_disable:
+ pm_runtime_disable(dev);
err_clk:
if (hva->clk)
clk_unprepare(hva->clk);
--
2.25.1