media: rockchip/rga: use pm_runtime_resume_and_get()
authorMauro Carvalho Chehab <mchehab+huawei@kernel.org>
Fri, 23 Apr 2021 15:19:20 +0000 (17:19 +0200)
committerMauro Carvalho Chehab <mchehab+huawei@kernel.org>
Wed, 19 May 2021 07:51:42 +0000 (09:51 +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: Ezequiel Garcia <ezequiel@collabora.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
drivers/media/platform/rockchip/rga/rga-buf.c
drivers/media/platform/rockchip/rga/rga.c

index bf9a75b..81508ed 100644 (file)
@@ -79,9 +79,8 @@ static int rga_buf_start_streaming(struct vb2_queue *q, unsigned int count)
        struct rockchip_rga *rga = ctx->rga;
        int ret;
 
-       ret = pm_runtime_get_sync(rga->dev);
+       ret = pm_runtime_resume_and_get(rga->dev);
        if (ret < 0) {
-               pm_runtime_put_noidle(rga->dev);
                rga_buf_return_buffers(q, VB2_BUF_STATE_QUEUED);
                return ret;
        }
index 9d12242..bf3fd71 100644 (file)
@@ -866,7 +866,9 @@ static int rga_probe(struct platform_device *pdev)
                goto unreg_video_dev;
        }
 
-       pm_runtime_get_sync(rga->dev);
+       ret = pm_runtime_resume_and_get(rga->dev);
+       if (ret < 0)
+               goto unreg_video_dev;
 
        rga->version.major = (rga_read(rga, RGA_VERSION_INFO) >> 24) & 0xFF;
        rga->version.minor = (rga_read(rga, RGA_VERSION_INFO) >> 20) & 0x0F;