media: i2c: imx290: use pm_runtime_resume_and_get()
authorMauro Carvalho Chehab <mchehab+huawei@kernel.org>
Fri, 23 Apr 2021 15:19:13 +0000 (17:19 +0200)
committerMauro Carvalho Chehab <mchehab+huawei@kernel.org>
Wed, 19 May 2021 07:51:40 +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.

Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
drivers/media/i2c/imx290.c

index 6319a42..06020e6 100644 (file)
@@ -764,11 +764,9 @@ static int imx290_set_stream(struct v4l2_subdev *sd, int enable)
        int ret = 0;
 
        if (enable) {
-               ret = pm_runtime_get_sync(imx290->dev);
-               if (ret < 0) {
-                       pm_runtime_put_noidle(imx290->dev);
+               ret = pm_runtime_resume_and_get(imx290->dev);
+               if (ret < 0)
                        goto unlock_and_return;
-               }
 
                ret = imx290_start_streaming(imx290);
                if (ret) {