diff mbox series

[72/78] media: s3c-camif: use pm_runtime_resume_and_get()

Message ID 3cfe70dad65dc078a656458cb55087a5269e9cc3.1619191723.git.mchehab+huawei@kernel.org
State Superseded
Headers show
Series media: use pm_runtime_resume_and_get() instead of pm_runtime_get_sync() | expand

Commit Message

Mauro Carvalho Chehab April 24, 2021, 6:45 a.m. UTC
Commit dd8088d5a896 ("PM: runtime: Add pm_runtime_resume_and_get to deal with usage counter")
added pm_runtime_resume_and_get() in order to automatically handle
dev->power.usage_count decrement on errors.

Use the new API, in order to cleanup the error check logic.

Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
---
 drivers/media/platform/s3c-camif/camif-capture.c | 5 ++---
 drivers/media/platform/s3c-camif/camif-core.c    | 5 +++--
 2 files changed, 5 insertions(+), 5 deletions(-)

Comments

Sylwester Nawrocki April 25, 2021, 7:36 p.m. UTC | #1
Hi Mauro,

On 24.04.2021 08:45, Mauro Carvalho Chehab wrote:
> Commit dd8088d5a896 ("PM: runtime: Add pm_runtime_resume_and_get to deal with usage counter")

> added pm_runtime_resume_and_get() in order to automatically handle

> dev->power.usage_count decrement on errors.

> 

> Use the new API, in order to cleanup the error check logic.

> 

> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>

> ---

>   drivers/media/platform/s3c-camif/camif-capture.c | 5 ++---

>   drivers/media/platform/s3c-camif/camif-core.c    | 5 +++--

>   2 files changed, 5 insertions(+), 5 deletions(-)

> 

> diff --git a/drivers/media/platform/s3c-camif/camif-capture.c b/drivers/media/platform/s3c-camif/camif-capture.c

> index 9ca49af29542..01fa08065ebc 100644

> --- a/drivers/media/platform/s3c-camif/camif-capture.c

> +++ b/drivers/media/platform/s3c-camif/camif-capture.c

> @@ -547,16 +547,15 @@ static int s3c_camif_open(struct file *file)

>   	if (ret < 0)

>   		goto unlock;

>   

> -	ret = pm_runtime_get_sync(camif->dev);

> +	ret = pm_runtime_resume_and_get(camif->dev);

>   	if (ret < 0)


> -		goto err_pm;

> +		goto unlock;


I think we don't need that label change, fh still needs to be released
in case of an error.

>   	ret = sensor_set_power(camif, 1);

>   	if (!ret)

>   		goto unlock;

>   

>   	pm_runtime_put(camif->dev);

> -err_pm:

>   	v4l2_fh_release(file);

>   unlock:

>   	mutex_unlock(&camif->lock);


--
Regards,
Sylwester
diff mbox series

Patch

diff --git a/drivers/media/platform/s3c-camif/camif-capture.c b/drivers/media/platform/s3c-camif/camif-capture.c
index 9ca49af29542..01fa08065ebc 100644
--- a/drivers/media/platform/s3c-camif/camif-capture.c
+++ b/drivers/media/platform/s3c-camif/camif-capture.c
@@ -547,16 +547,15 @@  static int s3c_camif_open(struct file *file)
 	if (ret < 0)
 		goto unlock;
 
-	ret = pm_runtime_get_sync(camif->dev);
+	ret = pm_runtime_resume_and_get(camif->dev);
 	if (ret < 0)
-		goto err_pm;
+		goto unlock;
 
 	ret = sensor_set_power(camif, 1);
 	if (!ret)
 		goto unlock;
 
 	pm_runtime_put(camif->dev);
-err_pm:
 	v4l2_fh_release(file);
 unlock:
 	mutex_unlock(&camif->lock);
diff --git a/drivers/media/platform/s3c-camif/camif-core.c b/drivers/media/platform/s3c-camif/camif-core.c
index 4c3c00d59c92..e1d51fd3e700 100644
--- a/drivers/media/platform/s3c-camif/camif-core.c
+++ b/drivers/media/platform/s3c-camif/camif-core.c
@@ -460,9 +460,9 @@  static int s3c_camif_probe(struct platform_device *pdev)
 
 	pm_runtime_enable(dev);
 
-	ret = pm_runtime_get_sync(dev);
+	ret = pm_runtime_resume_and_get(dev);
 	if (ret < 0)
-		goto err_pm;
+		goto err_disable;
 
 	ret = camif_media_dev_init(camif);
 	if (ret < 0)
@@ -502,6 +502,7 @@  static int s3c_camif_probe(struct platform_device *pdev)
 	camif_unregister_media_entities(camif);
 err_pm:
 	pm_runtime_put(dev);
+err_disable:
 	pm_runtime_disable(dev);
 	camif_clk_put(camif);
 err_clk: