media: v4l2: Add HEVC_SCALING_MATRIX attribute to v4l2-ctrl-*
authorJohn Cox <jc@kynesim.co.uk>
Fri, 6 Aug 2021 09:53:50 +0000 (10:53 +0100)
committerDom Cobley <popcornmix@gmail.com>
Mon, 21 Mar 2022 16:04:20 +0000 (16:04 +0000)
Add code to support V4L2_CID_MPEG_VIDEO_HEVC_SCALING_MATRIX to
v4l2-ctrl-*. This change was in the unsplit v4l2-ctrl.c but failed
to make it through the split.

Signed-off-by: John Cox <jc@kynesim.co.uk>
drivers/media/v4l2-core/v4l2-ctrls-core.c
drivers/media/v4l2-core/v4l2-ctrls-defs.c

index c4b5082..b14eb8f 100644 (file)
@@ -617,6 +617,9 @@ static int std_validate_compound(const struct v4l2_ctrl *ctrl, u32 idx,
                zero_padding(*p_hevc_pps);
                break;
 
+       case V4L2_CTRL_TYPE_HEVC_SCALING_MATRIX:
+               break;
+
        case V4L2_CTRL_TYPE_HEVC_DECODE_PARAMS:
                p_hevc_decode_params = p;
 
@@ -1240,6 +1243,9 @@ static struct v4l2_ctrl *v4l2_ctrl_new(struct v4l2_ctrl_handler *hdl,
        case V4L2_CTRL_TYPE_HEVC_SLICE_PARAMS:
                elem_size = sizeof(struct v4l2_ctrl_hevc_slice_params);
                break;
+       case V4L2_CTRL_TYPE_HEVC_SCALING_MATRIX:
+               elem_size = sizeof(struct v4l2_ctrl_hevc_scaling_matrix);
+               break;
        case V4L2_CTRL_TYPE_HEVC_DECODE_PARAMS:
                elem_size = sizeof(struct v4l2_ctrl_hevc_decode_params);
                break;
index 421300e..eae300c 100644 (file)
@@ -997,6 +997,7 @@ const char *v4l2_ctrl_get_name(u32 id)
        case V4L2_CID_MPEG_VIDEO_HEVC_SPS:                      return "HEVC Sequence Parameter Set";
        case V4L2_CID_MPEG_VIDEO_HEVC_PPS:                      return "HEVC Picture Parameter Set";
        case V4L2_CID_MPEG_VIDEO_HEVC_SLICE_PARAMS:             return "HEVC Slice Parameters";
+       case V4L2_CID_MPEG_VIDEO_HEVC_SCALING_MATRIX:           return "HEVC Scaling Matrix";
        case V4L2_CID_MPEG_VIDEO_HEVC_DECODE_PARAMS:            return "HEVC Decode Parameters";
        case V4L2_CID_MPEG_VIDEO_HEVC_DECODE_MODE:              return "HEVC Decode Mode";
        case V4L2_CID_MPEG_VIDEO_HEVC_START_CODE:               return "HEVC Start Code";
@@ -1490,6 +1491,9 @@ void v4l2_ctrl_fill(u32 id, const char **name, enum v4l2_ctrl_type *type,
        case V4L2_CID_MPEG_VIDEO_HEVC_SLICE_PARAMS:
                *type = V4L2_CTRL_TYPE_HEVC_SLICE_PARAMS;
                break;
+       case V4L2_CID_MPEG_VIDEO_HEVC_SCALING_MATRIX:
+               *type = V4L2_CTRL_TYPE_HEVC_SCALING_MATRIX;
+               break;
        case V4L2_CID_MPEG_VIDEO_HEVC_DECODE_PARAMS:
                *type = V4L2_CTRL_TYPE_HEVC_DECODE_PARAMS;
                break;