Give JPU peripheral chance to finish current job.
Don't switch off clock until context release.

Signed-off-by: Mikhail Ulyanov <mikhail.ulya...@cogentembedded.com>
---
 drivers/media/platform/rcar_jpu.c | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/drivers/media/platform/rcar_jpu.c 
b/drivers/media/platform/rcar_jpu.c
index 039bbbc..aa327e6 100644
--- a/drivers/media/platform/rcar_jpu.c
+++ b/drivers/media/platform/rcar_jpu.c
@@ -1296,17 +1296,17 @@ static int jpu_release(struct file *file)
        struct jpu *jpu = video_drvdata(file);
        struct jpu_ctx *ctx = fh_to_ctx(file->private_data);
 
-       mutex_lock(&jpu->mutex);
-       if (--jpu->ref_count == 0)
-               clk_disable_unprepare(jpu->clk);
-       mutex_unlock(&jpu->mutex);
-
        v4l2_m2m_ctx_release(ctx->fh.m2m_ctx);
        v4l2_ctrl_handler_free(&ctx->ctrl_handler);
        v4l2_fh_del(&ctx->fh);
        v4l2_fh_exit(&ctx->fh);
        kfree(ctx);
 
+       mutex_lock(&jpu->mutex);
+       if (--jpu->ref_count == 0)
+               clk_disable_unprepare(jpu->clk);
+       mutex_unlock(&jpu->mutex);
+
        return 0;
 }
 
-- 
2.5.1

--
To unsubscribe from this list: send the line "unsubscribe linux-media" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to