Commit a9d45ec7 authored by Javier Martinez Canillas's avatar Javier Martinez Canillas Committed by Hans Verkuil

media: venus: dec: Fix capture formats enumeration order

Commit 9593126d ("media: venus: Add a handling of QC08C compressed
format") and commit cef92b14 ("media: venus: Add a handling of QC10C
compressed format") added support for the QC08C and QC10C compressed
formats respectively.

But these also caused a regression, because the new formats where added
at the beginning of the vdec_formats[] array and the vdec_inst_init()
function sets the default format output and capture using fixed indexes
of that array:

static void vdec_inst_init(struct venus_inst *inst)
{
...
	inst->fmt_out = &vdec_formats[8];
	inst->fmt_cap = &vdec_formats[0];
...
}

Since now V4L2_PIX_FMT_NV12 is not the first entry in the array anymore,
the default capture format is not set to that as it was done before.

Both commits changed the first index to keep inst->fmt_out default format
set to V4L2_PIX_FMT_H264, but did not update the latter to keep .fmt_out
default format set to V4L2_PIX_FMT_NV12.

Rather than updating the index to the current V4L2_PIX_FMT_NV12 position,
let's reorder the entries so that this format is the first entry again.

This would also make VIDIOC_ENUM_FMT report the V4L2_PIX_FMT_NV12 format
with an index 0 as it did before the QC08C and QC10C formats were added.

Fixes: 9593126d ("media: venus: Add a handling of QC08C compressed format")
Fixes: cef92b14 ("media: venus: Add a handling of QC10C compressed format")
Signed-off-by: default avatarJavier Martinez Canillas <javierm@redhat.com>
Signed-off-by: default avatarStanimir Varbanov <stanimir.k.varbanov@gmail.com>
Signed-off-by: default avatarHans Verkuil <hverkuil-cisco@xs4all.nl>
parent bfe13265
...@@ -31,15 +31,15 @@ ...@@ -31,15 +31,15 @@
*/ */
static const struct venus_format vdec_formats[] = { static const struct venus_format vdec_formats[] = {
{ {
.pixfmt = V4L2_PIX_FMT_QC08C, .pixfmt = V4L2_PIX_FMT_NV12,
.num_planes = 1, .num_planes = 1,
.type = V4L2_BUF_TYPE_VIDEO_CAPTURE_MPLANE, .type = V4L2_BUF_TYPE_VIDEO_CAPTURE_MPLANE,
}, { }, {
.pixfmt = V4L2_PIX_FMT_QC10C, .pixfmt = V4L2_PIX_FMT_QC08C,
.num_planes = 1, .num_planes = 1,
.type = V4L2_BUF_TYPE_VIDEO_CAPTURE_MPLANE, .type = V4L2_BUF_TYPE_VIDEO_CAPTURE_MPLANE,
},{ }, {
.pixfmt = V4L2_PIX_FMT_NV12, .pixfmt = V4L2_PIX_FMT_QC10C,
.num_planes = 1, .num_planes = 1,
.type = V4L2_BUF_TYPE_VIDEO_CAPTURE_MPLANE, .type = V4L2_BUF_TYPE_VIDEO_CAPTURE_MPLANE,
}, { }, {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment