media: venus: venc: use pm_runtime_resume_and_get()
authorMauro Carvalho Chehab <mchehab+huawei@kernel.org>
Fri, 23 Apr 2021 15:19:19 +0000 (17:19 +0200)
committerMauro Carvalho Chehab <mchehab+huawei@kernel.org>
Wed, 19 May 2021 07:51:43 +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/platform/qcom/venus/venc.c

index 4a7291f..8dd49d4 100644 (file)
@@ -1205,9 +1205,9 @@ static int venc_open(struct file *file)
 
        venus_helper_init_instance(inst);
 
-       ret = pm_runtime_get_sync(core->dev_enc);
+       ret = pm_runtime_resume_and_get(core->dev_enc);
        if (ret < 0)
-               goto err_put_sync;
+               goto err_free;
 
        ret = venc_ctrl_init(inst);
        if (ret)
@@ -1252,6 +1252,7 @@ err_ctrl_deinit:
        venc_ctrl_deinit(inst);
 err_put_sync:
        pm_runtime_put_sync(core->dev_enc);
+err_free:
        kfree(inst);
        return ret;
 }