Re: [PATCH v3] media: st-delta: Fix PM disable depth imbalance in delta_probe

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Miaoqian Lin,

Thanks for the patch !

Acked-by: Hugues Fruchet <hugues.fruchet@xxxxxxxxxxx>

BR,
Hugues.

On 3/7/22 9:08 AM, Miaoqian Lin wrote:
The pm_runtime_enable will decrease power disable depth.
If the probe fails, we should use pm_runtime_disable() to balance
pm_runtime_enable().

Fixes: f386509 ("[media] st-delta: STiH4xx multi-format video decoder v4l2 driver")
Signed-off-by: Miaoqian Lin <linmq006@xxxxxxxxx>
---
changes in v2:
- remove unused label.
changes in v3:
- add err_pm_disable label and update related 'goto err'.
- update commit message
---
  drivers/media/platform/sti/delta/delta-v4l2.c | 6 ++++--
  1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/drivers/media/platform/sti/delta/delta-v4l2.c b/drivers/media/platform/sti/delta/delta-v4l2.c
index c887a31ebb54..420ad4d8df5d 100644
--- a/drivers/media/platform/sti/delta/delta-v4l2.c
+++ b/drivers/media/platform/sti/delta/delta-v4l2.c
@@ -1859,7 +1859,7 @@ static int delta_probe(struct platform_device *pdev)
  	if (ret) {
  		dev_err(delta->dev, "%s failed to initialize firmware ipc channel\n",
  			DELTA_PREFIX);
-		goto err;
+		goto err_pm_disable;
  	}
/* register all available decoders */
@@ -1873,7 +1873,7 @@ static int delta_probe(struct platform_device *pdev)
  	if (ret) {
  		dev_err(delta->dev, "%s failed to register V4L2 device\n",
  			DELTA_PREFIX);
-		goto err;
+		goto err_pm_disable;
  	}
delta->work_queue = create_workqueue(DELTA_NAME);
@@ -1898,6 +1898,8 @@ static int delta_probe(struct platform_device *pdev)
  	destroy_workqueue(delta->work_queue);
  err_v4l2:
  	v4l2_device_unregister(&delta->v4l2_dev);
+err_pm_disable:
+	pm_runtime_disable(dev);
  err:
  	return ret;
  }




[Index of Archives]     [Linux Input]     [Video for Linux]     [Gstreamer Embedded]     [Mplayer Users]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]

  Powered by Linux