This is an automatic generated email to let you know that the following patch 
were queued:

Subject: media: camss: use pm_runtime_resume_and_get()
Author:  Mauro Carvalho Chehab <[email protected]>
Date:    Fri Apr 23 17:19:18 2021 +0200

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.

Reviewed-by: Robert Foss <[email protected]>
Signed-off-by: Mauro Carvalho Chehab <[email protected]>

 drivers/media/platform/qcom/camss/camss-csid.c   | 6 ++----
 drivers/media/platform/qcom/camss/camss-csiphy.c | 6 ++----
 drivers/media/platform/qcom/camss/camss-ispif.c  | 6 ++----
 drivers/media/platform/qcom/camss/camss-vfe.c    | 5 +++--
 4 files changed, 9 insertions(+), 14 deletions(-)

---

diff --git a/drivers/media/platform/qcom/camss/camss-csid.c 
b/drivers/media/platform/qcom/camss/camss-csid.c
index 0e6b76e83983..7e2490ca1ad1 100644
--- a/drivers/media/platform/qcom/camss/camss-csid.c
+++ b/drivers/media/platform/qcom/camss/camss-csid.c
@@ -156,11 +156,9 @@ static int csid_set_power(struct v4l2_subdev *sd, int on)
        int ret;
 
        if (on) {
-               ret = pm_runtime_get_sync(dev);
-               if (ret < 0) {
-                       pm_runtime_put_sync(dev);
+               ret = pm_runtime_resume_and_get(dev);
+               if (ret < 0)
                        return ret;
-               }
 
                ret = regulator_enable(csid->vdda);
                if (ret < 0) {
diff --git a/drivers/media/platform/qcom/camss/camss-csiphy.c 
b/drivers/media/platform/qcom/camss/camss-csiphy.c
index 1996541278a2..b623e007aec6 100644
--- a/drivers/media/platform/qcom/camss/camss-csiphy.c
+++ b/drivers/media/platform/qcom/camss/camss-csiphy.c
@@ -197,11 +197,9 @@ static int csiphy_set_power(struct v4l2_subdev *sd, int on)
        if (on) {
                int ret;
 
-               ret = pm_runtime_get_sync(dev);
-               if (ret < 0) {
-                       pm_runtime_put_sync(dev);
+               ret = pm_runtime_resume_and_get(dev);
+               if (ret < 0)
                        return ret;
-               }
 
                ret = csiphy_set_clock_rates(csiphy);
                if (ret < 0) {
diff --git a/drivers/media/platform/qcom/camss/camss-ispif.c 
b/drivers/media/platform/qcom/camss/camss-ispif.c
index d7942f723fdc..1b716182d35c 100644
--- a/drivers/media/platform/qcom/camss/camss-ispif.c
+++ b/drivers/media/platform/qcom/camss/camss-ispif.c
@@ -372,11 +372,9 @@ static int ispif_set_power(struct v4l2_subdev *sd, int on)
                        goto exit;
                }
 
-               ret = pm_runtime_get_sync(dev);
-               if (ret < 0) {
-                       pm_runtime_put_sync(dev);
+               ret = pm_runtime_resume_and_get(dev);
+               if (ret < 0)
                        goto exit;
-               }
 
                ret = camss_enable_clocks(ispif->nclocks, ispif->clock, dev);
                if (ret < 0) {
diff --git a/drivers/media/platform/qcom/camss/camss-vfe.c 
b/drivers/media/platform/qcom/camss/camss-vfe.c
index 1584ee77ad00..27ab20c5b57e 100644
--- a/drivers/media/platform/qcom/camss/camss-vfe.c
+++ b/drivers/media/platform/qcom/camss/camss-vfe.c
@@ -584,9 +584,9 @@ static int vfe_get(struct vfe_device *vfe)
                if (ret < 0)
                        goto error_pm_domain;
 
-               ret = pm_runtime_get_sync(vfe->camss->dev);
+               ret = pm_runtime_resume_and_get(vfe->camss->dev);
                if (ret < 0)
-                       goto error_pm_runtime_get;
+                       goto error_domain_off;
 
                ret = vfe_set_clock_rates(vfe);
                if (ret < 0)
@@ -620,6 +620,7 @@ error_reset:
 
 error_pm_runtime_get:
        pm_runtime_put_sync(vfe->camss->dev);
+error_domain_off:
        vfe->ops->pm_domain_off(vfe);
 
 error_pm_domain:

_______________________________________________
linuxtv-commits mailing list
[email protected]
https://www.linuxtv.org/cgi-bin/mailman/listinfo/linuxtv-commits

Reply via email to