Commit fcc62176 authored by Maxime Jourdan's avatar Maxime Jourdan Committed by Mauro Carvalho Chehab

media: s5p_mfc_dec: set flags for OUTPUT coded formats

Tag all the coded formats where the s5p_mfc decoder supports dynamic
resolution switching or has a bytestream parser.
Signed-off-by: default avatarMaxime Jourdan <mjourdan@baylibre.com>
Reviewed-by: default avatarPaul Kocialkowski <paul.kocialkowski@bootlin.com>
Signed-off-by: default avatarHans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@kernel.org>
parent 127efdbc
...@@ -732,6 +732,7 @@ struct s5p_mfc_fmt { ...@@ -732,6 +732,7 @@ struct s5p_mfc_fmt {
enum s5p_mfc_fmt_type type; enum s5p_mfc_fmt_type type;
u32 num_planes; u32 num_planes;
u32 versions; u32 versions;
u32 flags;
}; };
/* /*
......
...@@ -62,6 +62,8 @@ static struct s5p_mfc_fmt formats[] = { ...@@ -62,6 +62,8 @@ static struct s5p_mfc_fmt formats[] = {
.type = MFC_FMT_DEC, .type = MFC_FMT_DEC,
.num_planes = 1, .num_planes = 1,
.versions = MFC_V5PLUS_BITS, .versions = MFC_V5PLUS_BITS,
.flags = V4L2_FMT_FLAG_DYN_RESOLUTION |
V4L2_FMT_FLAG_CONTINUOUS_BYTESTREAM,
}, },
{ {
.fourcc = V4L2_PIX_FMT_H264_MVC, .fourcc = V4L2_PIX_FMT_H264_MVC,
...@@ -69,6 +71,8 @@ static struct s5p_mfc_fmt formats[] = { ...@@ -69,6 +71,8 @@ static struct s5p_mfc_fmt formats[] = {
.type = MFC_FMT_DEC, .type = MFC_FMT_DEC,
.num_planes = 1, .num_planes = 1,
.versions = MFC_V6PLUS_BITS, .versions = MFC_V6PLUS_BITS,
.flags = V4L2_FMT_FLAG_DYN_RESOLUTION |
V4L2_FMT_FLAG_CONTINUOUS_BYTESTREAM,
}, },
{ {
.fourcc = V4L2_PIX_FMT_H263, .fourcc = V4L2_PIX_FMT_H263,
...@@ -76,6 +80,7 @@ static struct s5p_mfc_fmt formats[] = { ...@@ -76,6 +80,7 @@ static struct s5p_mfc_fmt formats[] = {
.type = MFC_FMT_DEC, .type = MFC_FMT_DEC,
.num_planes = 1, .num_planes = 1,
.versions = MFC_V5PLUS_BITS, .versions = MFC_V5PLUS_BITS,
.flags = V4L2_FMT_FLAG_DYN_RESOLUTION,
}, },
{ {
.fourcc = V4L2_PIX_FMT_MPEG1, .fourcc = V4L2_PIX_FMT_MPEG1,
...@@ -83,6 +88,8 @@ static struct s5p_mfc_fmt formats[] = { ...@@ -83,6 +88,8 @@ static struct s5p_mfc_fmt formats[] = {
.type = MFC_FMT_DEC, .type = MFC_FMT_DEC,
.num_planes = 1, .num_planes = 1,
.versions = MFC_V5PLUS_BITS, .versions = MFC_V5PLUS_BITS,
.flags = V4L2_FMT_FLAG_DYN_RESOLUTION |
V4L2_FMT_FLAG_CONTINUOUS_BYTESTREAM,
}, },
{ {
.fourcc = V4L2_PIX_FMT_MPEG2, .fourcc = V4L2_PIX_FMT_MPEG2,
...@@ -90,6 +97,8 @@ static struct s5p_mfc_fmt formats[] = { ...@@ -90,6 +97,8 @@ static struct s5p_mfc_fmt formats[] = {
.type = MFC_FMT_DEC, .type = MFC_FMT_DEC,
.num_planes = 1, .num_planes = 1,
.versions = MFC_V5PLUS_BITS, .versions = MFC_V5PLUS_BITS,
.flags = V4L2_FMT_FLAG_DYN_RESOLUTION |
V4L2_FMT_FLAG_CONTINUOUS_BYTESTREAM,
}, },
{ {
.fourcc = V4L2_PIX_FMT_MPEG4, .fourcc = V4L2_PIX_FMT_MPEG4,
...@@ -97,6 +106,8 @@ static struct s5p_mfc_fmt formats[] = { ...@@ -97,6 +106,8 @@ static struct s5p_mfc_fmt formats[] = {
.type = MFC_FMT_DEC, .type = MFC_FMT_DEC,
.num_planes = 1, .num_planes = 1,
.versions = MFC_V5PLUS_BITS, .versions = MFC_V5PLUS_BITS,
.flags = V4L2_FMT_FLAG_DYN_RESOLUTION |
V4L2_FMT_FLAG_CONTINUOUS_BYTESTREAM,
}, },
{ {
.fourcc = V4L2_PIX_FMT_XVID, .fourcc = V4L2_PIX_FMT_XVID,
...@@ -104,6 +115,7 @@ static struct s5p_mfc_fmt formats[] = { ...@@ -104,6 +115,7 @@ static struct s5p_mfc_fmt formats[] = {
.type = MFC_FMT_DEC, .type = MFC_FMT_DEC,
.num_planes = 1, .num_planes = 1,
.versions = MFC_V5PLUS_BITS, .versions = MFC_V5PLUS_BITS,
.flags = V4L2_FMT_FLAG_DYN_RESOLUTION,
}, },
{ {
.fourcc = V4L2_PIX_FMT_VC1_ANNEX_G, .fourcc = V4L2_PIX_FMT_VC1_ANNEX_G,
...@@ -111,6 +123,7 @@ static struct s5p_mfc_fmt formats[] = { ...@@ -111,6 +123,7 @@ static struct s5p_mfc_fmt formats[] = {
.type = MFC_FMT_DEC, .type = MFC_FMT_DEC,
.num_planes = 1, .num_planes = 1,
.versions = MFC_V5PLUS_BITS, .versions = MFC_V5PLUS_BITS,
.flags = V4L2_FMT_FLAG_DYN_RESOLUTION,
}, },
{ {
.fourcc = V4L2_PIX_FMT_VC1_ANNEX_L, .fourcc = V4L2_PIX_FMT_VC1_ANNEX_L,
...@@ -118,6 +131,7 @@ static struct s5p_mfc_fmt formats[] = { ...@@ -118,6 +131,7 @@ static struct s5p_mfc_fmt formats[] = {
.type = MFC_FMT_DEC, .type = MFC_FMT_DEC,
.num_planes = 1, .num_planes = 1,
.versions = MFC_V5PLUS_BITS, .versions = MFC_V5PLUS_BITS,
.flags = V4L2_FMT_FLAG_DYN_RESOLUTION,
}, },
{ {
.fourcc = V4L2_PIX_FMT_VP8, .fourcc = V4L2_PIX_FMT_VP8,
...@@ -125,6 +139,7 @@ static struct s5p_mfc_fmt formats[] = { ...@@ -125,6 +139,7 @@ static struct s5p_mfc_fmt formats[] = {
.type = MFC_FMT_DEC, .type = MFC_FMT_DEC,
.num_planes = 1, .num_planes = 1,
.versions = MFC_V6PLUS_BITS, .versions = MFC_V6PLUS_BITS,
.flags = V4L2_FMT_FLAG_DYN_RESOLUTION,
}, },
{ {
.fourcc = V4L2_PIX_FMT_HEVC, .fourcc = V4L2_PIX_FMT_HEVC,
...@@ -132,6 +147,8 @@ static struct s5p_mfc_fmt formats[] = { ...@@ -132,6 +147,8 @@ static struct s5p_mfc_fmt formats[] = {
.type = MFC_FMT_DEC, .type = MFC_FMT_DEC,
.num_planes = 1, .num_planes = 1,
.versions = MFC_V10_BIT, .versions = MFC_V10_BIT,
.flags = V4L2_FMT_FLAG_DYN_RESOLUTION |
V4L2_FMT_FLAG_CONTINUOUS_BYTESTREAM,
}, },
{ {
.fourcc = V4L2_PIX_FMT_VP9, .fourcc = V4L2_PIX_FMT_VP9,
...@@ -139,6 +156,7 @@ static struct s5p_mfc_fmt formats[] = { ...@@ -139,6 +156,7 @@ static struct s5p_mfc_fmt formats[] = {
.type = MFC_FMT_DEC, .type = MFC_FMT_DEC,
.num_planes = 1, .num_planes = 1,
.versions = MFC_V10_BIT, .versions = MFC_V10_BIT,
.flags = V4L2_FMT_FLAG_DYN_RESOLUTION,
}, },
}; };
......
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