diff mbox series

[v4,1/5] v4l: Add new Colorimetry Class

Message ID 20210120092606.3987207-2-stanimir.varbanov@linaro.org
State Superseded
Headers show
Series HDR10 static metadata | expand

Commit Message

Stanimir Varbanov Jan. 20, 2021, 9:26 a.m. UTC
Add Colorimetry control class for colorimetry controls

Signed-off-by: Stanimir Varbanov <stanimir.varbanov@linaro.org>
---
 drivers/media/v4l2-core/v4l2-ctrls.c | 5 +++++
 include/uapi/linux/v4l2-controls.h   | 4 ++++
 2 files changed, 9 insertions(+)

Comments

Hans Verkuil Jan. 25, 2021, 10:09 a.m. UTC | #1
On 20/01/2021 10:26, Stanimir Varbanov wrote:
> Add Colorimetry control class for colorimetry controls

> 

> Signed-off-by: Stanimir Varbanov <stanimir.varbanov@linaro.org>

> ---

>  drivers/media/v4l2-core/v4l2-ctrls.c | 5 +++++

>  include/uapi/linux/v4l2-controls.h   | 4 ++++

>  2 files changed, 9 insertions(+)

> 

> diff --git a/drivers/media/v4l2-core/v4l2-ctrls.c b/drivers/media/v4l2-core/v4l2-ctrls.c

> index f7b310240af2..a5137a867411 100644

> --- a/drivers/media/v4l2-core/v4l2-ctrls.c

> +++ b/drivers/media/v4l2-core/v4l2-ctrls.c

> @@ -1201,6 +1201,10 @@ const char *v4l2_ctrl_get_name(u32 id)

>  	case V4L2_CID_STATELESS_H264_SLICE_PARAMS:		return "H264 Slice Parameters";

>  	case V4L2_CID_STATELESS_H264_DECODE_PARAMS:		return "H264 Decode Parameters";

>  	case V4L2_CID_STATELESS_FWHT_PARAMS:			return "FWHT Stateless Parameters";

> +

> +	/* Colorimetry controls */

> +	/* Keep the order of the 'case's the same as in v4l2-controls.h! */

> +	case V4L2_CID_COLORIMETRY_CLASS:	return "Colorimetry Controls";

>  	default:

>  		return NULL;

>  	}

> @@ -1389,6 +1393,7 @@ void v4l2_ctrl_fill(u32 id, const char **name, enum v4l2_ctrl_type *type,

>  	case V4L2_CID_RF_TUNER_CLASS:

>  	case V4L2_CID_DETECT_CLASS:

>  	case V4L2_CID_CODEC_STATELESS_CLASS:

> +	case V4L2_CID_COLORIMETRY_CLASS:

>  		*type = V4L2_CTRL_TYPE_CTRL_CLASS;

>  		/* You can neither read not write these */


I wouldn't have bothered with this, but since a v5 will be needed in any case:
can you fix the typo in this comment? not -> nor

No need to create a separate patch for this. Just mention in the commit message
that you fixed this typo as well.

Regards,

	Hans

>  		*flags |= V4L2_CTRL_FLAG_READ_ONLY | V4L2_CTRL_FLAG_WRITE_ONLY;

> diff --git a/include/uapi/linux/v4l2-controls.h b/include/uapi/linux/v4l2-controls.h

> index 039c0d7add1b..a41039559193 100644

> --- a/include/uapi/linux/v4l2-controls.h

> +++ b/include/uapi/linux/v4l2-controls.h

> @@ -66,6 +66,7 @@

>  #define V4L2_CTRL_CLASS_RF_TUNER	0x00a20000	/* RF tuner controls */

>  #define V4L2_CTRL_CLASS_DETECT		0x00a30000	/* Detection controls */

>  #define V4L2_CTRL_CLASS_CODEC_STATELESS 0x00a40000	/* Stateless codecs controls */

> +#define V4L2_CTRL_CLASS_COLORIMETRY	0x00a50000	/* Colorimetry controls */

>  

>  /* User-class control IDs */

>  

> @@ -1657,6 +1658,9 @@ struct v4l2_ctrl_fwht_params {

>  	__u32 quantization;

>  };

>  

> +#define V4L2_CID_COLORIMETRY_CLASS_BASE	(V4L2_CTRL_CLASS_COLORIMETRY | 0x900)

> +#define V4L2_CID_COLORIMETRY_CLASS	(V4L2_CTRL_CLASS_COLORIMETRY | 1)

> +

>  /* MPEG-compression definitions kept for backwards compatibility */

>  #ifndef __KERNEL__

>  #define V4L2_CTRL_CLASS_MPEG            V4L2_CTRL_CLASS_CODEC

>
diff mbox series

Patch

diff --git a/drivers/media/v4l2-core/v4l2-ctrls.c b/drivers/media/v4l2-core/v4l2-ctrls.c
index f7b310240af2..a5137a867411 100644
--- a/drivers/media/v4l2-core/v4l2-ctrls.c
+++ b/drivers/media/v4l2-core/v4l2-ctrls.c
@@ -1201,6 +1201,10 @@  const char *v4l2_ctrl_get_name(u32 id)
 	case V4L2_CID_STATELESS_H264_SLICE_PARAMS:		return "H264 Slice Parameters";
 	case V4L2_CID_STATELESS_H264_DECODE_PARAMS:		return "H264 Decode Parameters";
 	case V4L2_CID_STATELESS_FWHT_PARAMS:			return "FWHT Stateless Parameters";
+
+	/* Colorimetry controls */
+	/* Keep the order of the 'case's the same as in v4l2-controls.h! */
+	case V4L2_CID_COLORIMETRY_CLASS:	return "Colorimetry Controls";
 	default:
 		return NULL;
 	}
@@ -1389,6 +1393,7 @@  void v4l2_ctrl_fill(u32 id, const char **name, enum v4l2_ctrl_type *type,
 	case V4L2_CID_RF_TUNER_CLASS:
 	case V4L2_CID_DETECT_CLASS:
 	case V4L2_CID_CODEC_STATELESS_CLASS:
+	case V4L2_CID_COLORIMETRY_CLASS:
 		*type = V4L2_CTRL_TYPE_CTRL_CLASS;
 		/* You can neither read not write these */
 		*flags |= V4L2_CTRL_FLAG_READ_ONLY | V4L2_CTRL_FLAG_WRITE_ONLY;
diff --git a/include/uapi/linux/v4l2-controls.h b/include/uapi/linux/v4l2-controls.h
index 039c0d7add1b..a41039559193 100644
--- a/include/uapi/linux/v4l2-controls.h
+++ b/include/uapi/linux/v4l2-controls.h
@@ -66,6 +66,7 @@ 
 #define V4L2_CTRL_CLASS_RF_TUNER	0x00a20000	/* RF tuner controls */
 #define V4L2_CTRL_CLASS_DETECT		0x00a30000	/* Detection controls */
 #define V4L2_CTRL_CLASS_CODEC_STATELESS 0x00a40000	/* Stateless codecs controls */
+#define V4L2_CTRL_CLASS_COLORIMETRY	0x00a50000	/* Colorimetry controls */
 
 /* User-class control IDs */
 
@@ -1657,6 +1658,9 @@  struct v4l2_ctrl_fwht_params {
 	__u32 quantization;
 };
 
+#define V4L2_CID_COLORIMETRY_CLASS_BASE	(V4L2_CTRL_CLASS_COLORIMETRY | 0x900)
+#define V4L2_CID_COLORIMETRY_CLASS	(V4L2_CTRL_CLASS_COLORIMETRY | 1)
+
 /* MPEG-compression definitions kept for backwards compatibility */
 #ifndef __KERNEL__
 #define V4L2_CTRL_CLASS_MPEG            V4L2_CTRL_CLASS_CODEC