hantro: Make sure we don't use post-processor on an encoder
authorEzequiel Garcia <ezequiel@collabora.com>
Wed, 1 Jul 2020 13:16:07 +0000 (15:16 +0200)
committerMauro Carvalho Chehab <mchehab+huawei@kernel.org>
Sun, 19 Jul 2020 11:26:06 +0000 (13:26 +0200)
Commit 986eee3a5234 ("media: hantro: Prevent encoders from using
post-processing") fixed hantro_needs_postproc condition,
but missed one case. Encoders don't have any post-processor
hardware block, so also can't be disabled.

Fix it.

Fixes: 986eee3a5234 ("media: hantro: Prevent encoders from using post-processing")
Signed-off-by: Ezequiel Garcia <ezequiel@collabora.com>
Reviewed-by: Philipp Zabel <p.zabel@pengutronix.de>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
drivers/staging/media/hantro/hantro_drv.c

index 34367b169011d47e4a1b2cb4987be5e2f5a0e69a..d32b6b1ab70bb7c9adf61fc992233312a44b2133 100644 (file)
@@ -122,10 +122,12 @@ void hantro_start_prepare_run(struct hantro_ctx *ctx)
        v4l2_ctrl_request_setup(src_buf->vb2_buf.req_obj.req,
                                &ctx->ctrl_handler);
 
-       if (hantro_needs_postproc(ctx, ctx->vpu_dst_fmt))
-               hantro_postproc_enable(ctx);
-       else
-               hantro_postproc_disable(ctx);
+       if (!ctx->is_encoder) {
+               if (hantro_needs_postproc(ctx, ctx->vpu_dst_fmt))
+                       hantro_postproc_enable(ctx);
+               else
+                       hantro_postproc_disable(ctx);
+       }
 }
 
 void hantro_end_prepare_run(struct hantro_ctx *ctx)