This is an automatic generated email to let you know that the following patch 
were queued at the 
http://git.linuxtv.org/cgit.cgi/v4l-utils.git tree:

Subject: v4l-utils: sync with latest media-committers git repo
Author:  Hans Verkuil <hverk...@xs4all.nl>
Date:    Tue Mar 4 11:35:09 2025 +0100

This adds support for V4L2_CTRL_TYPE_RECT and V4L2_CTRL_WHICH_MIN/MAX_VAL.

Also add the newly generated siemens_gigaset_rc20.toml rc-keymap.

Signed-off-by: Hans Verkuil <hverk...@xs4all.nl>

 contrib/freebsd/include/linux/input-event-codes.h  |  1 +
 contrib/freebsd/include/linux/v4l2-controls.h      |  7 ++++
 contrib/freebsd/include/linux/videodev2.h          |  7 ++++
 include/linux/bpf.h                                | 35 +++++++++++--------
 include/linux/media-bus-format.h                   |  4 ++-
 include/linux/v4l2-controls.h                      |  7 ++++
 include/linux/v4l2-dv-timings.h                    |  2 +-
 include/linux/videodev2.h                          |  7 ++++
 utils/common/v4l2-pix-formats.h                    |  2 ++
 utils/common/v4l2-tpg-core.c                       |  3 ++
 utils/common/v4l2-tpg.h                            |  1 +
 utils/keytable/parse.h                             |  1 +
 utils/keytable/rc_keymaps/meson.build              |  1 +
 .../keytable/rc_keymaps/siemens_gigaset_rc20.toml  | 39 ++++++++++++++++++++++
 utils/keytable/rc_maps.cfg                         |  1 +
 utils/v4l2-tracer/retrace-gen.cpp                  |  1 +
 utils/v4l2-tracer/trace-gen.cpp                    |  1 +
 utils/v4l2-tracer/v4l2-tracer-info-gen.h           |  2 ++
 18 files changed, 107 insertions(+), 15 deletions(-)

---

http://git.linuxtv.org/cgit.cgi/v4l-utils.git/commit/?id=c2920f93666da960c005fc2b727b850d9ac5b35a
diff --git a/contrib/freebsd/include/linux/input-event-codes.h 
b/contrib/freebsd/include/linux/input-event-codes.h
index de4647601e8b..7cd934c79930 100644
--- a/contrib/freebsd/include/linux/input-event-codes.h
+++ b/contrib/freebsd/include/linux/input-event-codes.h
@@ -519,6 +519,7 @@
 #define KEY_NOTIFICATION_CENTER        0x1bc   /* Show/hide the notification 
center */
 #define KEY_PICKUP_PHONE       0x1bd   /* Answer incoming call */
 #define KEY_HANGUP_PHONE       0x1be   /* Decline incoming call */
+#define KEY_LINK_PHONE         0x1bf   /* AL Phone Syncing */
 
 #define KEY_DEL_EOL            0x1c0
 #define KEY_DEL_EOS            0x1c1
diff --git a/contrib/freebsd/include/linux/v4l2-controls.h 
b/contrib/freebsd/include/linux/v4l2-controls.h
index 9fc663e6059e..8c06b28a4b70 100644
--- a/contrib/freebsd/include/linux/v4l2-controls.h
+++ b/contrib/freebsd/include/linux/v4l2-controls.h
@@ -217,6 +217,13 @@ enum v4l2_colorfx {
  */
 #define V4L2_CID_USER_THP7312_BASE             (V4L2_CID_USER_BASE + 0x11c0)
 
+/*
+ * The base for the uvc driver controls.
+ * See linux/uvcvideo.h for the list of controls.
+ * We reserve 64 controls for this driver.
+ */
+#define V4L2_CID_USER_UVC_BASE                 (V4L2_CID_USER_BASE + 0x11e0)
+
 /* MPEG-class control IDs */
 /* The MPEG controls are applicable to all codec controls
  * and the 'MPEG' part of the define is historical */
diff --git a/contrib/freebsd/include/linux/videodev2.h 
b/contrib/freebsd/include/linux/videodev2.h
index 41d0fde79dee..349d187f0dc1 100644
--- a/contrib/freebsd/include/linux/videodev2.h
+++ b/contrib/freebsd/include/linux/videodev2.h
@@ -867,6 +867,8 @@ struct v4l2_pix_format {
 
 /* Vendor specific - used for RaspberryPi PiSP */
 #define V4L2_META_FMT_RPI_BE_CFG       v4l2_fourcc('R', 'P', 'B', 'C') /* PiSP 
BE configuration */
+#define V4L2_META_FMT_RPI_FE_CFG       v4l2_fourcc('R', 'P', 'F', 'C') /* PiSP 
FE configuration */
+#define V4L2_META_FMT_RPI_FE_STATS     v4l2_fourcc('R', 'P', 'F', 'S') /* PiSP 
FE stats */
 
 
 /* priv field value to indicates that subsequent fields are valid. */
@@ -1826,6 +1828,7 @@ struct v4l2_ext_control {
                int32_t *p_s32;
                int64_t *p_s64;
                struct v4l2_area *p_area;
+               struct v4l2_rect *p_rect;
                struct v4l2_ctrl_h264_sps *p_h264_sps;
                struct v4l2_ctrl_h264_pps *p_h264_pps;
                struct v4l2_ctrl_h264_scaling_matrix *p_h264_scaling_matrix;
@@ -1874,6 +1877,8 @@ struct v4l2_ext_controls {
 #define V4L2_CTRL_WHICH_CUR_VAL   0
 #define V4L2_CTRL_WHICH_DEF_VAL   0x0f000000
 #define V4L2_CTRL_WHICH_REQUEST_VAL 0x0f010000
+#define V4L2_CTRL_WHICH_MIN_VAL   0x0f020000
+#define V4L2_CTRL_WHICH_MAX_VAL   0x0f030000
 
 enum v4l2_ctrl_type {
        V4L2_CTRL_TYPE_INTEGER       = 1,
@@ -1892,6 +1897,7 @@ enum v4l2_ctrl_type {
        V4L2_CTRL_TYPE_U16           = 0x0101,
        V4L2_CTRL_TYPE_U32           = 0x0102,
        V4L2_CTRL_TYPE_AREA          = 0x0106,
+       V4L2_CTRL_TYPE_RECT          = 0x0107,
 
        V4L2_CTRL_TYPE_HDR10_CLL_INFO           = 0x0110,
        V4L2_CTRL_TYPE_HDR10_MASTERING_DISPLAY  = 0x0111,
@@ -1980,6 +1986,7 @@ struct v4l2_querymenu {
 #define V4L2_CTRL_FLAG_EXECUTE_ON_WRITE        0x0200
 #define V4L2_CTRL_FLAG_MODIFY_LAYOUT   0x0400
 #define V4L2_CTRL_FLAG_DYNAMIC_ARRAY   0x0800
+#define V4L2_CTRL_FLAG_HAS_WHICH_MIN_MAX 0x1000
 
 /*  Query flags, to be ORed with the control ID */
 #define V4L2_CTRL_FLAG_NEXT_CTRL       0x80000000
diff --git a/include/linux/bpf.h b/include/linux/bpf.h
index b9139231c3f7..535272c7b312 100644
--- a/include/linux/bpf.h
+++ b/include/linux/bpf.h
@@ -1116,11 +1116,15 @@ enum bpf_attach_type {
        BPF_NETKIT_PRIMARY,
        BPF_NETKIT_PEER,
        BPF_TRACE_KPROBE_SESSION,
+       BPF_TRACE_UPROBE_SESSION,
        __MAX_BPF_ATTACH_TYPE
 };
 
 #define MAX_BPF_ATTACH_TYPE __MAX_BPF_ATTACH_TYPE
 
+/* Add BPF_LINK_TYPE(type, name) in bpf_types.h to keep bpf_link_type_strs[]
+ * in sync with the definitions below.
+ */
 enum bpf_link_type {
        BPF_LINK_TYPE_UNSPEC = 0,
        BPF_LINK_TYPE_RAW_TRACEPOINT = 1,
@@ -1569,6 +1573,16 @@ union bpf_attr {
                 * If provided, prog_flags should have BPF_F_TOKEN_FD flag set.
                 */
                __s32           prog_token_fd;
+               /* The fd_array_cnt can be used to pass the length of the
+                * fd_array array. In this case all the [map] file descriptors
+                * passed in this array will be bound to the program, even if
+                * the maps are not referenced directly. The functionality is
+                * similar to the BPF_PROG_BIND_MAP syscall, but maps can be
+                * used by the verifier during the program load. If provided,
+                * then the fd_array[0,...,fd_array_cnt-1] is expected to be
+                * continuous.
+                */
+               __u32           fd_array_cnt;
        };
 
        struct { /* anonymous struct used by BPF_OBJ_* commands */
@@ -1970,6 +1984,8 @@ union bpf_attr {
  *             program.
  *     Return
  *             The SMP id of the processor running the program.
+ *     Attributes
+ *             __bpf_fastcall
  *
  * long bpf_skb_store_bytes(struct sk_buff *skb, u32 offset, const void *from, 
u32 len, u64 flags)
  *     Description
@@ -3101,10 +3117,6 @@ union bpf_attr {
  *             with the **CONFIG_BPF_KPROBE_OVERRIDE** configuration
  *             option, and in this case it only works on functions tagged with
  *             **ALLOW_ERROR_INJECTION** in the kernel code.
- *
- *             Also, the helper is only available for the architectures having
- *             the CONFIG_FUNCTION_ERROR_INJECTION option. As of this writing,
- *             x86 architecture is the only one to support this feature.
  *     Return
  *             0
  *
@@ -5369,7 +5381,7 @@ union bpf_attr {
  *             Currently, the **flags** must be 0. Currently, nr_loops is
  *             limited to 1 << 23 (~8 million) loops.
  *
- *             long (\*callback_fn)(u32 index, void \*ctx);
+ *             long (\*callback_fn)(u64 index, void \*ctx);
  *
  *             where **index** is the current index in the loop. The index
  *             is zero-indexed.
@@ -6047,11 +6059,6 @@ enum {
        BPF_F_MARK_ENFORCE              = (1ULL << 6),
 };
 
-/* BPF_FUNC_clone_redirect and BPF_FUNC_redirect flags. */
-enum {
-       BPF_F_INGRESS                   = (1ULL << 0),
-};
-
 /* BPF_FUNC_skb_set_tunnel_key and BPF_FUNC_skb_get_tunnel_key flags. */
 enum {
        BPF_F_TUNINFO_IPV6              = (1ULL << 0),
@@ -6198,10 +6205,12 @@ enum {
        BPF_F_BPRM_SECUREEXEC   = (1ULL << 0),
 };
 
-/* Flags for bpf_redirect_map helper */
+/* Flags for bpf_redirect and bpf_redirect_map helpers */
 enum {
-       BPF_F_BROADCAST         = (1ULL << 3),
-       BPF_F_EXCLUDE_INGRESS   = (1ULL << 4),
+       BPF_F_INGRESS           = (1ULL << 0), /* used for skb path */
+       BPF_F_BROADCAST         = (1ULL << 3), /* used for XDP path */
+       BPF_F_EXCLUDE_INGRESS   = (1ULL << 4), /* used for XDP path */
+#define BPF_F_REDIRECT_FLAGS (BPF_F_INGRESS | BPF_F_BROADCAST | 
BPF_F_EXCLUDE_INGRESS)
 };
 
 #define __bpf_md_ptr(type, name)       \
diff --git a/include/linux/media-bus-format.h b/include/linux/media-bus-format.h
index d4c1d991014b..ff62056feed5 100644
--- a/include/linux/media-bus-format.h
+++ b/include/linux/media-bus-format.h
@@ -34,7 +34,7 @@
 
 #define MEDIA_BUS_FMT_FIXED                    0x0001
 
-/* RGB - next is       0x1026 */
+/* RGB - next is       0x1028 */
 #define MEDIA_BUS_FMT_RGB444_1X12              0x1016
 #define MEDIA_BUS_FMT_RGB444_2X8_PADHI_BE      0x1001
 #define MEDIA_BUS_FMT_RGB444_2X8_PADHI_LE      0x1002
@@ -68,6 +68,8 @@
 #define MEDIA_BUS_FMT_ARGB8888_1X32            0x100d
 #define MEDIA_BUS_FMT_RGB888_1X32_PADHI                0x100f
 #define MEDIA_BUS_FMT_RGB101010_1X30           0x1018
+#define MEDIA_BUS_FMT_RGB101010_1X7X5_SPWG     0x1026
+#define MEDIA_BUS_FMT_RGB101010_1X7X5_JEIDA    0x1027
 #define MEDIA_BUS_FMT_RGB666_1X36_CPADLO       0x1020
 #define MEDIA_BUS_FMT_RGB888_1X36_CPADLO       0x1021
 #define MEDIA_BUS_FMT_RGB121212_1X36           0x1019
diff --git a/include/linux/v4l2-controls.h b/include/linux/v4l2-controls.h
index 9fc663e6059e..8c06b28a4b70 100644
--- a/include/linux/v4l2-controls.h
+++ b/include/linux/v4l2-controls.h
@@ -217,6 +217,13 @@ enum v4l2_colorfx {
  */
 #define V4L2_CID_USER_THP7312_BASE             (V4L2_CID_USER_BASE + 0x11c0)
 
+/*
+ * The base for the uvc driver controls.
+ * See linux/uvcvideo.h for the list of controls.
+ * We reserve 64 controls for this driver.
+ */
+#define V4L2_CID_USER_UVC_BASE                 (V4L2_CID_USER_BASE + 0x11e0)
+
 /* MPEG-class control IDs */
 /* The MPEG controls are applicable to all codec controls
  * and the 'MPEG' part of the define is historical */
diff --git a/include/linux/v4l2-dv-timings.h b/include/linux/v4l2-dv-timings.h
index ef0128c7369c..44a16e0e5a12 100644
--- a/include/linux/v4l2-dv-timings.h
+++ b/include/linux/v4l2-dv-timings.h
@@ -2,7 +2,7 @@
 /*
  * V4L2 DV timings header.
  *
- * Copyright (C) 2012-2016  Hans Verkuil <hans.verk...@cisco.com>
+ * Copyright (C) 2012-2016  Hans Verkuil <hansv...@cisco.com>
  */
 
 #ifndef _V4L2_DV_TIMINGS_H
diff --git a/include/linux/videodev2.h b/include/linux/videodev2.h
index 23db72afdf60..f5f872948de9 100644
--- a/include/linux/videodev2.h
+++ b/include/linux/videodev2.h
@@ -833,6 +833,8 @@ struct v4l2_pix_format {
 
 /* Vendor specific - used for RaspberryPi PiSP */
 #define V4L2_META_FMT_RPI_BE_CFG       v4l2_fourcc('R', 'P', 'B', 'C') /* PiSP 
BE configuration */
+#define V4L2_META_FMT_RPI_FE_CFG       v4l2_fourcc('R', 'P', 'F', 'C') /* PiSP 
FE configuration */
+#define V4L2_META_FMT_RPI_FE_STATS     v4l2_fourcc('R', 'P', 'F', 'S') /* PiSP 
FE stats */
 
 
 /* priv field value to indicates that subsequent fields are valid. */
@@ -1792,6 +1794,7 @@ struct v4l2_ext_control {
                __s32 *p_s32;
                __s64 *p_s64;
                struct v4l2_area *p_area;
+               struct v4l2_rect *p_rect;
                struct v4l2_ctrl_h264_sps *p_h264_sps;
                struct v4l2_ctrl_h264_pps *p_h264_pps;
                struct v4l2_ctrl_h264_scaling_matrix *p_h264_scaling_matrix;
@@ -1840,6 +1843,8 @@ struct v4l2_ext_controls {
 #define V4L2_CTRL_WHICH_CUR_VAL   0
 #define V4L2_CTRL_WHICH_DEF_VAL   0x0f000000
 #define V4L2_CTRL_WHICH_REQUEST_VAL 0x0f010000
+#define V4L2_CTRL_WHICH_MIN_VAL   0x0f020000
+#define V4L2_CTRL_WHICH_MAX_VAL   0x0f030000
 
 enum v4l2_ctrl_type {
        V4L2_CTRL_TYPE_INTEGER       = 1,
@@ -1858,6 +1863,7 @@ enum v4l2_ctrl_type {
        V4L2_CTRL_TYPE_U16           = 0x0101,
        V4L2_CTRL_TYPE_U32           = 0x0102,
        V4L2_CTRL_TYPE_AREA          = 0x0106,
+       V4L2_CTRL_TYPE_RECT          = 0x0107,
 
        V4L2_CTRL_TYPE_HDR10_CLL_INFO           = 0x0110,
        V4L2_CTRL_TYPE_HDR10_MASTERING_DISPLAY  = 0x0111,
@@ -1946,6 +1952,7 @@ struct v4l2_querymenu {
 #define V4L2_CTRL_FLAG_EXECUTE_ON_WRITE        0x0200
 #define V4L2_CTRL_FLAG_MODIFY_LAYOUT   0x0400
 #define V4L2_CTRL_FLAG_DYNAMIC_ARRAY   0x0800
+#define V4L2_CTRL_FLAG_HAS_WHICH_MIN_MAX 0x1000
 
 /*  Query flags, to be ORed with the control ID */
 #define V4L2_CTRL_FLAG_NEXT_CTRL       0x80000000
diff --git a/utils/common/v4l2-pix-formats.h b/utils/common/v4l2-pix-formats.h
index 0dc8ebf8af98..9d2dac5508ee 100644
--- a/utils/common/v4l2-pix-formats.h
+++ b/utils/common/v4l2-pix-formats.h
@@ -199,6 +199,8 @@
        case V4L2_PIX_FMT_Y212: return "12-bit YUYV Packed";
        case V4L2_PIX_FMT_Y216: return "16-bit YUYV Packed";
        case V4L2_META_FMT_RPI_BE_CFG: return "RPi PiSP BE Config format";
+       case V4L2_META_FMT_RPI_FE_CFG: return "RPi PiSP FE Config format";
+       case V4L2_META_FMT_RPI_FE_STATS: return "RPi PiSP FE Statistics format";
        case V4L2_PIX_FMT_MJPEG: return "Motion-JPEG";
        case V4L2_PIX_FMT_JPEG: return "JFIF JPEG";
        case V4L2_PIX_FMT_DV: return "1394";
diff --git a/utils/common/v4l2-tpg-core.c b/utils/common/v4l2-tpg-core.c
index fe19327cd286..e54c49bd7d3e 100644
--- a/utils/common/v4l2-tpg-core.c
+++ b/utils/common/v4l2-tpg-core.c
@@ -1785,6 +1785,9 @@ static void tpg_precalculate_line(struct tpg_data *tpg)
        unsigned p;
        unsigned x;
 
+       if (WARN_ON_ONCE(!tpg->src_width || !tpg->scaled_width))
+               return;
+
        switch (tpg->pattern) {
        case TPG_PAT_GREEN:
                contrast = TPG_COLOR_100_RED;
diff --git a/utils/common/v4l2-tpg.h b/utils/common/v4l2-tpg.h
index f141e4080f55..216cb75e4ea0 100644
--- a/utils/common/v4l2-tpg.h
+++ b/utils/common/v4l2-tpg.h
@@ -34,6 +34,7 @@ typedef __s8 s8;
 #define max3(x, y, z) tpg_max((typeof(x))tpg_max(x, y), z)
 #define array_size(a, b) ((a) * (b))
 #define array3_size(a, b, c) ((a) * (b) * (c))
+#define WARN_ON_ONCE(a) (a)
 
 static inline void vfree(void *p)
 {
diff --git a/utils/keytable/parse.h b/utils/keytable/parse.h
index 424b2fc92bc3..d81a16cc5830 100644
--- a/utils/keytable/parse.h
+++ b/utils/keytable/parse.h
@@ -445,6 +445,7 @@ struct parse_event key_events[] = {
        {"KEY_NOTIFICATION_CENTER", 0x1bc},
        {"KEY_PICKUP_PHONE", 0x1bd},
        {"KEY_HANGUP_PHONE", 0x1be},
+       {"KEY_LINK_PHONE", 0x1bf},
        {"KEY_DEL_EOL", 0x1c0},
        {"KEY_DEL_EOS", 0x1c1},
        {"KEY_INS_LINE", 0x1c2},
diff --git a/utils/keytable/rc_keymaps/meson.build 
b/utils/keytable/rc_keymaps/meson.build
index 829507b47e6d..ecb154ce0d91 100644
--- a/utils/keytable/rc_keymaps/meson.build
+++ b/utils/keytable/rc_keymaps/meson.build
@@ -119,6 +119,7 @@ ir_keytable_rc_keymaps = files(
     'real_audio_220_32_keys.toml',
     'reddo.toml',
     'samsung_ak59_00125a.toml',
+    'siemens_gigaset_rc20.toml',
     'snapstream_firefly.toml',
     'streamzap.toml',
     'su3000.toml',
diff --git a/utils/keytable/rc_keymaps/siemens_gigaset_rc20.toml 
b/utils/keytable/rc_keymaps/siemens_gigaset_rc20.toml
new file mode 100644
index 000000000000..9f4b590a2917
--- /dev/null
+++ b/utils/keytable/rc_keymaps/siemens_gigaset_rc20.toml
@@ -0,0 +1,39 @@
+# Generated with gen_keytables.pl from 
drivers/media/rc/keymaps/rc-siemens-gigaset-rc20.c
+[[protocols]]
+name = "siemens_gigaset_rc20"
+protocol = "rc5"
+variant = "rc5"
+[protocols.scancodes]
+0x1501 = "KEY_POWER"
+0x1502 = "KEY_MUTE"
+0x1503 = "KEY_NUMERIC_1"
+0x1504 = "KEY_NUMERIC_2"
+0x1505 = "KEY_NUMERIC_3"
+0x1506 = "KEY_NUMERIC_4"
+0x1507 = "KEY_NUMERIC_5"
+0x1508 = "KEY_NUMERIC_6"
+0x1509 = "KEY_NUMERIC_7"
+0x150a = "KEY_NUMERIC_8"
+0x150b = "KEY_NUMERIC_9"
+0x150c = "KEY_NUMERIC_0"
+0x150d = "KEY_UP"
+0x150e = "KEY_LEFT"
+0x150f = "KEY_OK"
+0x1510 = "KEY_RIGHT"
+0x1511 = "KEY_DOWN"
+0x1512 = "KEY_SHUFFLE"
+0x1513 = "KEY_EXIT"
+0x1514 = "KEY_RED"
+0x1515 = "KEY_GREEN"
+0x1516 = "KEY_YELLOW"
+0x1517 = "KEY_BLUE"
+0x1518 = "KEY_MENU"
+0x1519 = "KEY_TEXT"
+0x151a = "KEY_MODE"
+0x1521 = "KEY_EPG"
+0x1522 = "KEY_FAVORITES"
+0x1523 = "KEY_CHANNELUP"
+0x1524 = "KEY_CHANNELDOWN"
+0x1525 = "KEY_VOLUMEUP"
+0x1526 = "KEY_VOLUMEDOWN"
+0x1527 = "KEY_INFO"
diff --git a/utils/keytable/rc_maps.cfg b/utils/keytable/rc_maps.cfg
index e366c477dd5c..94806a3b63e4 100644
--- a/utils/keytable/rc_maps.cfg
+++ b/utils/keytable/rc_maps.cfg
@@ -134,6 +134,7 @@
 *      rc-rc6-mce               rc6_mce.toml
 *      rc-real-audio-220-32-keys real_audio_220_32_keys.toml
 *      rc-reddo                 reddo.toml
+*      rc-siemens-gigaset-rc20  siemens_gigaset_rc20.toml
 *      rc-snapstream-firefly    snapstream_firefly.toml
 *      rc-streamzap             streamzap.toml
 *      rc-su3000                su3000.toml
diff --git a/utils/v4l2-tracer/retrace-gen.cpp 
b/utils/v4l2-tracer/retrace-gen.cpp
index 52323a0b0d4d..8554dbb74d58 100644
--- a/utils/v4l2-tracer/retrace-gen.cpp
+++ b/utils/v4l2-tracer/retrace-gen.cpp
@@ -4076,6 +4076,7 @@ struct v4l2_ext_control 
*retrace_v4l2_ext_control_gen(json_object *parent_obj, s
        //__s32 *p_s32;
        //__s64 *p_s64;
        //struct v4l2_area *p_area;
+       //struct v4l2_rect *p_rect;
        //struct v4l2_ctrl_h264_sps *p_h264_sps;
        //struct v4l2_ctrl_h264_pps *p_h264_pps;
        //struct v4l2_ctrl_h264_scaling_matrix *p_h264_scaling_matrix;
diff --git a/utils/v4l2-tracer/trace-gen.cpp b/utils/v4l2-tracer/trace-gen.cpp
index c1075e771078..cf7c840e9006 100644
--- a/utils/v4l2-tracer/trace-gen.cpp
+++ b/utils/v4l2-tracer/trace-gen.cpp
@@ -2220,6 +2220,7 @@ void trace_v4l2_ext_control_gen(void *arg, json_object 
*parent_obj, std::string
        //__s32 *p_s32;
        //__s64 *p_s64;
        //struct v4l2_area *p_area;
+       //struct v4l2_rect *p_rect;
        //struct v4l2_ctrl_h264_sps *p_h264_sps;
        //struct v4l2_ctrl_h264_pps *p_h264_pps;
        //struct v4l2_ctrl_h264_scaling_matrix *p_h264_scaling_matrix;
diff --git a/utils/v4l2-tracer/v4l2-tracer-info-gen.h 
b/utils/v4l2-tracer/v4l2-tracer-info-gen.h
index 79d965bc9066..bcea6ddeabec 100644
--- a/utils/v4l2-tracer/v4l2-tracer-info-gen.h
+++ b/utils/v4l2-tracer/v4l2-tracer-info-gen.h
@@ -1694,6 +1694,7 @@ constexpr val_def v4l2_ctrl_type_val_def[] = {
        { V4L2_CTRL_TYPE_U16,   "V4L2_CTRL_TYPE_U16" },
        { V4L2_CTRL_TYPE_U32,   "V4L2_CTRL_TYPE_U32" },
        { V4L2_CTRL_TYPE_AREA,  "V4L2_CTRL_TYPE_AREA" },
+       { V4L2_CTRL_TYPE_RECT,  "V4L2_CTRL_TYPE_RECT" },
        { V4L2_CTRL_TYPE_HDR10_CLL_INFO,        "V4L2_CTRL_TYPE_HDR10_CLL_INFO" 
},
        { V4L2_CTRL_TYPE_HDR10_MASTERING_DISPLAY,       
"V4L2_CTRL_TYPE_HDR10_MASTERING_DISPLAY" },
        { V4L2_CTRL_TYPE_H264_SPS,      "V4L2_CTRL_TYPE_H264_SPS" },
@@ -1734,6 +1735,7 @@ constexpr flag_def v4l2_ctrl_flag_def[] = {
        { V4L2_CTRL_FLAG_EXECUTE_ON_WRITE, "V4L2_CTRL_FLAG_EXECUTE_ON_WRITE" },
        { V4L2_CTRL_FLAG_MODIFY_LAYOUT, "V4L2_CTRL_FLAG_MODIFY_LAYOUT" },
        { V4L2_CTRL_FLAG_DYNAMIC_ARRAY, "V4L2_CTRL_FLAG_DYNAMIC_ARRAY" },
+       { V4L2_CTRL_FLAG_HAS_WHICH_MIN_MAX, "V4L2_CTRL_FLAG_HAS_WHICH_MIN_MAX" 
},
        { V4L2_CTRL_FLAG_NEXT_CTRL, "V4L2_CTRL_FLAG_NEXT_CTRL" },
        { V4L2_CTRL_FLAG_NEXT_COMPOUND, "V4L2_CTRL_FLAG_NEXT_COMPOUND" },
        { 0, "" }

Reply via email to