From 886aa71bd4c3d22b1879cae3a4cd60d09b3fc25f Mon Sep 17 00:00:00 2001 From: Mikhail Ulyanov Date: Thu, 1 Oct 2015 09:03:32 -0300 Subject: [PATCH] [media] V4L2: platform: rcar_jpu: switch off clock on release later Give JPU peripheral chance to finish current job. Don't switch off clock until context release. Signed-off-by: Mikhail Ulyanov Signed-off-by: Mauro Carvalho Chehab --- 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 644f9f4907f4..86d2a3d18241 100644 --- a/drivers/media/platform/rcar_jpu.c +++ b/drivers/media/platform/rcar_jpu.c @@ -1300,17 +1300,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.20.1