Download raw body.
sys/videoio.h: sync with Linux 6.16
On Fri, May 30, 2025 at 09:09:51PM +0200, Kirill A. Korinsky wrote:
> On Fri, 30 May 2025 20:34:23 +0200,
> Marcus Glocker <marcus@nazgul.ch> wrote:
> >
> > The formatting seems to be screwed here, and hence I'm getting rejects
> > when applying your diff.
> >
>
> I have no idea how does it had happened, but indeed it does.
>
> Here I had re-inlined it one more time.
Looks fine. Couldn't find any regression while quickly testing.
ok mglocker@
> Index: sys/sys/videoio.h
> ===================================================================
> RCS file: /home/cvs/src/sys/sys/videoio.h,v
> diff -u -p -r1.22 videoio.h
> --- sys/sys/videoio.h 26 Mar 2025 20:30:42 -0000 1.22
> +++ sys/sys/videoio.h 29 May 2025 11:29:14 -0000
> @@ -3714,10 +3714,18 @@ enum v4l2_buf_type {
> V4L2_BUF_TYPE_SDR_OUTPUT = 12,
> V4L2_BUF_TYPE_META_CAPTURE = 13,
> V4L2_BUF_TYPE_META_OUTPUT = 14,
> + /*
> + * Note: V4L2_TYPE_IS_VALID and V4L2_TYPE_IS_OUTPUT must
> + * be updated if a new type is added.
> + */
> /* Deprecated, do not use */
> V4L2_BUF_TYPE_PRIVATE = 0x80,
> };
>
> +#define V4L2_TYPE_IS_VALID(type) \
> + ((type) >= V4L2_BUF_TYPE_VIDEO_CAPTURE &&\
> + (type) <= V4L2_BUF_TYPE_META_OUTPUT)
> +
> #define V4L2_TYPE_IS_MULTIPLANAR(type) \
> ((type) == V4L2_BUF_TYPE_VIDEO_CAPTURE_MPLANE \
> || (type) == V4L2_BUF_TYPE_VIDEO_OUTPUT_MPLANE)
> @@ -3725,14 +3733,14 @@ enum v4l2_buf_type {
> #define V4L2_TYPE_IS_OUTPUT(type) \
> ((type) == V4L2_BUF_TYPE_VIDEO_OUTPUT \
> || (type) == V4L2_BUF_TYPE_VIDEO_OUTPUT_MPLANE \
> - || (type) == V4L2_BUF_TYPE_VIDEO_OVERLAY \
> || (type) == V4L2_BUF_TYPE_VIDEO_OUTPUT_OVERLAY \
> || (type) == V4L2_BUF_TYPE_VBI_OUTPUT \
> || (type) == V4L2_BUF_TYPE_SLICED_VBI_OUTPUT \
> || (type) == V4L2_BUF_TYPE_SDR_OUTPUT \
> || (type) == V4L2_BUF_TYPE_META_OUTPUT)
>
> -#define V4L2_TYPE_IS_CAPTURE(type) (!V4L2_TYPE_IS_OUTPUT(type))
> +#define V4L2_TYPE_IS_CAPTURE(type) \
> + (V4L2_TYPE_IS_VALID(type) && !V4L2_TYPE_IS_OUTPUT(type))
>
> enum v4l2_tuner_type {
> V4L2_TUNER_RADIO = 1,
> @@ -4178,8 +4186,10 @@ struct v4l2_pix_format {
> /* two planes -- one Y, one Cr + Cb interleaved */
> #define V4L2_PIX_FMT_NV12 v4l2_fourcc('N', 'V', '1', '2') /* 12 Y/CbCr 4:2:0 */
> #define V4L2_PIX_FMT_NV21 v4l2_fourcc('N', 'V', '2', '1') /* 12 Y/CrCb 4:2:0 */
> +#define V4L2_PIX_FMT_NV15 v4l2_fourcc('N', 'V', '1', '5') /* 15 Y/CbCr 4:2:0 10-bit packed */
> #define V4L2_PIX_FMT_NV16 v4l2_fourcc('N', 'V', '1', '6') /* 16 Y/CbCr 4:2:2 */
> #define V4L2_PIX_FMT_NV61 v4l2_fourcc('N', 'V', '6', '1') /* 16 Y/CrCb 4:2:2 */
> +#define V4L2_PIX_FMT_NV20 v4l2_fourcc('N', 'V', '2', '0') /* 20 Y/CbCr 4:2:2 10-bit packed */
> #define V4L2_PIX_FMT_NV24 v4l2_fourcc('N', 'V', '2', '4') /* 24 Y/CbCr 4:4:4 */
> #define V4L2_PIX_FMT_NV42 v4l2_fourcc('N', 'V', '4', '2') /* 24 Y/CrCb 4:4:4 */
> #define V4L2_PIX_FMT_P010 v4l2_fourcc('P', '0', '1', '0') /* 24 Y/CbCr 4:2:0 10-bit per component */
> @@ -4392,6 +4402,10 @@ struct v4l2_pix_format {
> #define V4L2_META_FMT_RK_ISP1_PARAMS v4l2_fourcc('R', 'K', '1', 'P') /* Rockchip ISP1 3A Parameters */
> #define V4L2_META_FMT_RK_ISP1_STAT_3A v4l2_fourcc('R', 'K', '1', 'S') /* Rockchip ISP1 3A Statistics */
> #define V4L2_META_FMT_RK_ISP1_EXT_PARAMS v4l2_fourcc('R', 'K', '1', 'E') /* Rockchip ISP1 3a Extensible Parameters */
> +
> +/* Vendor specific - used for C3_ISP */
> +#define V4L2_META_FMT_C3ISP_PARAMS v4l2_fourcc('C', '3', 'P', 'M') /* Amlogic C3 ISP Parameters */
> +#define V4L2_META_FMT_C3ISP_STATS v4l2_fourcc('C', '3', 'S', 'T') /* Amlogic C3 ISP Statistics */
>
> /* Vendor specific - used for RaspberryPi PiSP */
> #define V4L2_META_FMT_RPI_BE_CFG v4l2_fourcc('R', 'P', 'B', 'C') /* PiSP BE configuration */
>
sys/videoio.h: sync with Linux 6.16