diff mbox series

[RFC,6/6] media: cedrus: Add the H264_DECODING_MODE control

Message ID 20190603110946.4952-7-boris.brezillon@collabora.com (mailing list archive)
State New, archived
Headers show
Series media: uapi: h264: First batch of adjusments | expand

Commit Message

Boris Brezillon June 3, 2019, 11:09 a.m. UTC
The H264 uAPI has been modified to expose 2 operation modes: per slice
and per frame decoding.

The cedrus driver only supports per-slice decoding for now.

Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com>
---
 drivers/staging/media/sunxi/cedrus/cedrus.c | 13 +++++++++++++
 1 file changed, 13 insertions(+)
diff mbox series

Patch

diff --git a/drivers/staging/media/sunxi/cedrus/cedrus.c b/drivers/staging/media/sunxi/cedrus/cedrus.c
index 3661c6a04864..fe6e6a12409b 100644
--- a/drivers/staging/media/sunxi/cedrus/cedrus.c
+++ b/drivers/staging/media/sunxi/cedrus/cedrus.c
@@ -76,6 +76,19 @@  static const struct cedrus_control cedrus_controls[] = {
 		.codec		= CEDRUS_CODEC_H264,
 		.required	= true,
 	},
+	{
+		.cfg.id		= V4L2_CID_MPEG_VIDEO_H264_DECODING_MODE,
+		.cfg.type	= V4L2_CTRL_TYPE_MENU,
+		/*
+		 * Only per-slice decoding is supported for now. Note that we
+		 * don't need to extract this control value since only one
+		 * value is allowed: V4L2_MPEG_VIDEO_H264_DECODING_PER_SLICE.
+		 */
+		.cfg.max	= V4L2_MPEG_VIDEO_H264_DECODING_PER_SLICE,
+		.cfg.def	= V4L2_MPEG_VIDEO_H264_DECODING_PER_SLICE,
+		.codec		= CEDRUS_CODEC_H264,
+		.required	= true,
+	},
 };
 
 #define CEDRUS_CONTROLS_COUNT	ARRAY_SIZE(cedrus_controls)