Commit 008d2bd6 authored by Ezequiel Garcia's avatar Ezequiel Garcia Committed by Mauro Carvalho Chehab

media: controls: Add the stateless codec control class

Add a new control class to hold the stateless codecs controls
that are ready to be moved out of staging.
Signed-off-by: default avatarEzequiel Garcia <ezequiel@collabora.com>
Tested-by: default avatarJernej Skrabec <jernej.skrabec@siol.net>
Signed-off-by: default avatarHans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab+huawei@kernel.org>
parent b32e4850
...@@ -362,6 +362,10 @@ still cause this situation. ...@@ -362,6 +362,10 @@ still cause this situation.
- 0xa30000 - 0xa30000
- The class containing motion or object detection controls. These controls - The class containing motion or object detection controls. These controls
are described in :ref:`detect-controls`. are described in :ref:`detect-controls`.
* - ``V4L2_CTRL_CLASS_CODEC_STATELESS``
- 0xa40000
- The class containing stateless codec controls. These controls are
described in :ref:`codec-stateless-controls`.
Return Value Return Value
============ ============
......
...@@ -1181,6 +1181,10 @@ const char *v4l2_ctrl_get_name(u32 id) ...@@ -1181,6 +1181,10 @@ const char *v4l2_ctrl_get_name(u32 id)
case V4L2_CID_DETECT_MD_GLOBAL_THRESHOLD: return "MD Global Threshold"; case V4L2_CID_DETECT_MD_GLOBAL_THRESHOLD: return "MD Global Threshold";
case V4L2_CID_DETECT_MD_THRESHOLD_GRID: return "MD Threshold Grid"; case V4L2_CID_DETECT_MD_THRESHOLD_GRID: return "MD Threshold Grid";
case V4L2_CID_DETECT_MD_REGION_GRID: return "MD Region Grid"; case V4L2_CID_DETECT_MD_REGION_GRID: return "MD Region Grid";
/* Stateless Codec controls */
/* Keep the order of the 'case's the same as in v4l2-controls.h! */
case V4L2_CID_CODEC_STATELESS_CLASS: return "Stateless Codec Controls";
default: default:
return NULL; return NULL;
} }
...@@ -1368,6 +1372,7 @@ void v4l2_ctrl_fill(u32 id, const char **name, enum v4l2_ctrl_type *type, ...@@ -1368,6 +1372,7 @@ void v4l2_ctrl_fill(u32 id, const char **name, enum v4l2_ctrl_type *type,
case V4L2_CID_FM_RX_CLASS: case V4L2_CID_FM_RX_CLASS:
case V4L2_CID_RF_TUNER_CLASS: case V4L2_CID_RF_TUNER_CLASS:
case V4L2_CID_DETECT_CLASS: case V4L2_CID_DETECT_CLASS:
case V4L2_CID_CODEC_STATELESS_CLASS:
*type = V4L2_CTRL_TYPE_CTRL_CLASS; *type = V4L2_CTRL_TYPE_CTRL_CLASS;
/* You can neither read not write these */ /* You can neither read not write these */
*flags |= V4L2_CTRL_FLAG_READ_ONLY | V4L2_CTRL_FLAG_WRITE_ONLY; *flags |= V4L2_CTRL_FLAG_READ_ONLY | V4L2_CTRL_FLAG_WRITE_ONLY;
......
...@@ -65,6 +65,7 @@ ...@@ -65,6 +65,7 @@
#define V4L2_CTRL_CLASS_FM_RX 0x00a10000 /* FM Receiver controls */ #define V4L2_CTRL_CLASS_FM_RX 0x00a10000 /* FM Receiver controls */
#define V4L2_CTRL_CLASS_RF_TUNER 0x00a20000 /* RF tuner controls */ #define V4L2_CTRL_CLASS_RF_TUNER 0x00a20000 /* RF tuner controls */
#define V4L2_CTRL_CLASS_DETECT 0x00a30000 /* Detection controls */ #define V4L2_CTRL_CLASS_DETECT 0x00a30000 /* Detection controls */
#define V4L2_CTRL_CLASS_CODEC_STATELESS 0x00a40000 /* Stateless codecs controls */
/* User-class control IDs */ /* User-class control IDs */
...@@ -1177,6 +1178,12 @@ enum v4l2_detect_md_mode { ...@@ -1177,6 +1178,12 @@ enum v4l2_detect_md_mode {
#define V4L2_CID_DETECT_MD_THRESHOLD_GRID (V4L2_CID_DETECT_CLASS_BASE + 3) #define V4L2_CID_DETECT_MD_THRESHOLD_GRID (V4L2_CID_DETECT_CLASS_BASE + 3)
#define V4L2_CID_DETECT_MD_REGION_GRID (V4L2_CID_DETECT_CLASS_BASE + 4) #define V4L2_CID_DETECT_MD_REGION_GRID (V4L2_CID_DETECT_CLASS_BASE + 4)
/* Stateless CODECs controls */
#define V4L2_CID_CODEC_STATELESS_BASE (V4L2_CTRL_CLASS_CODEC_STATELESS | 0x900)
#define V4L2_CID_CODEC_STATELESS_CLASS (V4L2_CTRL_CLASS_CODEC_STATELESS | 1)
/* MPEG-compression definitions kept for backwards compatibility */ /* MPEG-compression definitions kept for backwards compatibility */
#ifndef __KERNEL__ #ifndef __KERNEL__
#define V4L2_CTRL_CLASS_MPEG V4L2_CTRL_CLASS_CODEC #define V4L2_CTRL_CLASS_MPEG V4L2_CTRL_CLASS_CODEC
......
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