media: mediatek: vcodec: Initialize decoder parameters after getting dec_capability
authorYunfei Dong <yunfei.dong@mediatek.com>
Sat, 18 Jun 2022 07:29:29 +0000 (08:29 +0100)
committerMauro Carvalho Chehab <mchehab@kernel.org>
Mon, 27 Jun 2022 08:14:34 +0000 (09:14 +0100)
Need to get dec_capability from scp first, then initialize decoder
supported format and other parameters according to dec_capability value.

Fixes: fd00d90330d1 ("media: mtk-vcodec: vdec: move stateful ops into their own file")
Signed-off-by: Yunfei Dong <yunfei.dong@mediatek.com>
Reviewed-by: Chen-Yu Tsai <wenst@chromium.org>
Tested-by: Chen-Yu Tsai <wenst@chromium.org>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
drivers/media/platform/mediatek/vcodec/mtk_vcodec_dec.c
drivers/media/platform/mediatek/vcodec/mtk_vcodec_dec_drv.c

index c96c95a740c83384b468e827205de2eb4536f70f..fe4b78c8eaefdf400d2072d81129923074456fe3 100644 (file)
@@ -150,8 +150,6 @@ void mtk_vcodec_dec_set_default_params(struct mtk_vcodec_ctx *ctx)
 {
        struct mtk_q_data *q_data;
 
-       ctx->dev->vdec_pdata->init_vdec_params(ctx);
-
        ctx->m2m_ctx->q_lock = &ctx->dev->dev_mutex;
        ctx->fh.m2m_ctx = ctx->m2m_ctx;
        ctx->fh.ctrl_handler = &ctx->ctrl_hdl;
index 3f63abbf289e02d616af5b68e1a0d4235eec2888..bf858b5ee6f3470726cd7a2b2b94120b85a5dcf0 100644 (file)
@@ -208,6 +208,8 @@ static int fops_vcodec_open(struct file *file)
 
                dev->dec_capability =
                        mtk_vcodec_fw_get_vdec_capa(dev->fw_handler);
+               ctx->dev->vdec_pdata->init_vdec_params(ctx);
+
                mtk_v4l2_debug(0, "decoder capability %x", dev->dec_capability);
        }