diff options
| author | Irui Wang <irui.wang@mediatek.com> | 2024-03-21 09:47:54 +0800 |
|---|---|---|
| committer | Hans Verkuil <hverkuil-cisco@xs4all.nl> | 2024-06-10 10:24:11 +0200 |
| commit | 59d438f8e02ca641c58d77e1feffa000ff809e9f (patch) | |
| tree | 1588d45e79ceb45cb596f9e52bf218eb8da3c8a0 /drivers/media/platform/mediatek/vcodec | |
| parent | media: mediatek: vcodec: add decoder command to support stateless decoder (diff) | |
| download | linux-59d438f8e02ca641c58d77e1feffa000ff809e9f.tar.gz linux-59d438f8e02ca641c58d77e1feffa000ff809e9f.zip | |
media: mediatek: vcodec: Handle invalid decoder vsi
Handle an invalid decoder vsi in vpu_dec_init to ensure the decoder vsi
is valid for future use.
Fixes: 590577a4e525 ("[media] vcodec: mediatek: Add Mediatek V4L2 Video Decoder Driver")
Signed-off-by: Irui Wang <irui.wang@mediatek.com>
Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Signed-off-by: Sebastian Fricke <sebastian.fricke@collabora.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Diffstat (limited to 'drivers/media/platform/mediatek/vcodec')
| -rw-r--r-- | drivers/media/platform/mediatek/vcodec/decoder/vdec_vpu_if.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/media/platform/mediatek/vcodec/decoder/vdec_vpu_if.c b/drivers/media/platform/mediatek/vcodec/decoder/vdec_vpu_if.c index da6be556727b..145958206e38 100644 --- a/drivers/media/platform/mediatek/vcodec/decoder/vdec_vpu_if.c +++ b/drivers/media/platform/mediatek/vcodec/decoder/vdec_vpu_if.c @@ -233,6 +233,12 @@ int vpu_dec_init(struct vdec_vpu_inst *vpu) mtk_vdec_debug(vpu->ctx, "vdec_inst=%p", vpu); err = vcodec_vpu_send_msg(vpu, (void *)&msg, sizeof(msg)); + + if (IS_ERR_OR_NULL(vpu->vsi)) { + mtk_vdec_err(vpu->ctx, "invalid vdec vsi, status=%d", err); + return -EINVAL; + } + mtk_vdec_debug(vpu->ctx, "- ret=%d", err); return err; } |
