Lines Matching +full:a +full:- +full:8

1 /* SPDX-License-Identifier: ((GPL-2.0+ WITH Linux-syscall-note) OR BSD-3-Clause) */
5 * Copyright (C) 1999-2012 the contributors
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
36 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
47 * All kernel-specific stuff were moved to media/v4l2-dev.h, so
66 #include <linux/v4l2-common.h>
67 #include <linux/v4l2-controls.h>
74 #define VIDEO_MAX_PLANES 8
77 * M I S C E L L A N E O U S
80 /* Four-character-code (FOURCC) */
81 #define v4l2_fourcc(a, b, c, d)\ argument
82 ((__u32)(a) | ((__u32)(b) << 8) | ((__u32)(c) << 16) | ((__u32)(d) << 24))
83 #define v4l2_fourcc_be(a, b, c, d) (v4l2_fourcc(a, b, c, d) | (1U << 31)) argument
98 buffer, top-bottom order */
99 V4L2_FIELD_SEQ_BT = 6, /* same as above + bottom-top order */
102 V4L2_FIELD_INTERLACED_TB = 8, /* both fields interlaced, top field
149 V4L2_BUF_TYPE_VIDEO_OUTPUT_OVERLAY = 8,
205 /* Obsolete pre-1998 SMPTE 240M HDTV standard, superseded by Rec 709 */
213 * based on a misunderstanding of the bt878 datasheet.
230 * and V4L2_QUANTIZATION_FULL_RANGE. To be used for (Motion-)JPEG.
235 V4L2_COLORSPACE_SRGB = 8,
246 /* DCI-P3 colorspace, used by cinema projectors */
259 * Determine how COLORSPACE_DEFAULT should map to a proper colorspace.
260 * This depends on whether this is a SDTV image (use SMPTE 170M), an
304 * Determine how XFER_FUNC_DEFAULT should map to a proper transfer function.
332 /* ITU-R 601 -- SDTV */
335 /* Rec. 709 -- HDTV */
338 /* ITU-R 601/EN 61966-2-4 Extended Gamut -- SDTV */
341 /* Rec. 709/EN 61966-2-4 Extended Gamut -- HDTV */
347 * originally due to a misunderstanding of the sYCC standard. It should
353 /* BT.2020 Non-constant Luminance Y'CbCr */
359 /* SMPTE 240M -- Obsolete HDTV */
360 V4L2_YCBCR_ENC_SMPTE240M = 8,
376 /* Hue mapped to 0 - 179 */
379 /* Hue mapped to 0-255 */
384 * Determine how YCBCR_ENC_DEFAULT should map to a proper Y'CbCr encoding.
406 * Determine how QUANTIZATION_DEFAULT should map to a proper quantization.
416 * Deprecated names for opRGB colorspace (IEC 61966-2-5)
419 * there is a chance we have to remove them in the future.
452 * struct v4l2_capability - Describes V4L2 device caps returned by VIDIOC_QUERYCAP
458 * @capabilities: capabilities of the physical device as a whole
473 #define V4L2_CAP_VIDEO_CAPTURE 0x00000001 /* Is a video capture device */
474 #define V4L2_CAP_VIDEO_OUTPUT 0x00000002 /* Is a video output device */
476 #define V4L2_CAP_VBI_CAPTURE 0x00000010 /* Is a raw VBI capture device */
477 #define V4L2_CAP_VBI_OUTPUT 0x00000020 /* Is a raw VBI output device */
478 #define V4L2_CAP_SLICED_VBI_CAPTURE 0x00000040 /* Is a sliced VBI capture device */
479 #define V4L2_CAP_SLICED_VBI_OUTPUT 0x00000080 /* Is a sliced VBI output device */
485 /* Is a video capture device that supports multiplanar formats */
487 /* Is a video output device that supports multiplanar formats */
489 /* Is a video mem-to-mem device that supports multiplanar formats */
491 /* Is a video mem-to-mem device */
494 #define V4L2_CAP_TUNER 0x00010000 /* has a tuner */
496 #define V4L2_CAP_RADIO 0x00040000 /* is a radio device */
497 #define V4L2_CAP_MODULATOR 0x00080000 /* has a modulator */
499 #define V4L2_CAP_SDR_CAPTURE 0x00100000 /* Is a SDR capture device */
501 #define V4L2_CAP_SDR_OUTPUT 0x00400000 /* Is a SDR output device */
502 #define V4L2_CAP_META_CAPTURE 0x00800000 /* Is a metadata capture device */
506 #define V4L2_CAP_META_OUTPUT 0x08000000 /* Is a metadata output device */
508 #define V4L2_CAP_TOUCH 0x10000000 /* Is a touch device */
515 * V I D E O I M A G E F O R M A T
540 #define V4L2_PIX_FMT_RGB332 v4l2_fourcc('R', 'G', 'B', '1') /* 8 RGB-3-3-2 */
542 #define V4L2_PIX_FMT_ARGB444 v4l2_fourcc('A', 'R', '1', '2') /* 16 aaaarrrr ggggbbbb */
544 #define V4L2_PIX_FMT_RGBA444 v4l2_fourcc('R', 'A', '1', '2') /* 16 rrrrgggg bbbbaaaa */
546 #define V4L2_PIX_FMT_ABGR444 v4l2_fourcc('A', 'B', '1', '2') /* 16 aaaabbbb ggggrrrr */
548 #define V4L2_PIX_FMT_BGRA444 v4l2_fourcc('G', 'A', '1', '2') /* 16 bbbbgggg rrrraaaa */
550 #define V4L2_PIX_FMT_RGB555 v4l2_fourcc('R', 'G', 'B', 'O') /* 16 RGB-5-5-5 */
551 #define V4L2_PIX_FMT_ARGB555 v4l2_fourcc('A', 'R', '1', '5') /* 16 ARGB-1-5-5-5 */
552 #define V4L2_PIX_FMT_XRGB555 v4l2_fourcc('X', 'R', '1', '5') /* 16 XRGB-1-5-5-5 */
553 #define V4L2_PIX_FMT_RGBA555 v4l2_fourcc('R', 'A', '1', '5') /* 16 RGBA-5-5-5-1 */
554 #define V4L2_PIX_FMT_RGBX555 v4l2_fourcc('R', 'X', '1', '5') /* 16 RGBX-5-5-5-1 */
555 #define V4L2_PIX_FMT_ABGR555 v4l2_fourcc('A', 'B', '1', '5') /* 16 ABGR-1-5-5-5 */
556 #define V4L2_PIX_FMT_XBGR555 v4l2_fourcc('X', 'B', '1', '5') /* 16 XBGR-1-5-5-5 */
557 #define V4L2_PIX_FMT_BGRA555 v4l2_fourcc('B', 'A', '1', '5') /* 16 BGRA-5-5-5-1 */
558 #define V4L2_PIX_FMT_BGRX555 v4l2_fourcc('B', 'X', '1', '5') /* 16 BGRX-5-5-5-1 */
559 #define V4L2_PIX_FMT_RGB565 v4l2_fourcc('R', 'G', 'B', 'P') /* 16 RGB-5-6-5 */
560 #define V4L2_PIX_FMT_RGB555X v4l2_fourcc('R', 'G', 'B', 'Q') /* 16 RGB-5-5-5 BE */
561 #define V4L2_PIX_FMT_ARGB555X v4l2_fourcc_be('A', 'R', '1', '5') /* 16 ARGB-5-5-5 BE */
562 #define V4L2_PIX_FMT_XRGB555X v4l2_fourcc_be('X', 'R', '1', '5') /* 16 XRGB-5-5-5 BE */
563 #define V4L2_PIX_FMT_RGB565X v4l2_fourcc('R', 'G', 'B', 'R') /* 16 RGB-5-6-5 BE */
566 #define V4L2_PIX_FMT_BGR666 v4l2_fourcc('B', 'G', 'R', 'H') /* 18 BGR-6-6-6 */
567 #define V4L2_PIX_FMT_BGR24 v4l2_fourcc('B', 'G', 'R', '3') /* 24 BGR-8-8-8 */
568 #define V4L2_PIX_FMT_RGB24 v4l2_fourcc('R', 'G', 'B', '3') /* 24 RGB-8-8-8 */
569 #define V4L2_PIX_FMT_BGR32 v4l2_fourcc('B', 'G', 'R', '4') /* 32 BGR-8-8-8-8 */
570 #define V4L2_PIX_FMT_ABGR32 v4l2_fourcc('A', 'R', '2', '4') /* 32 BGRA-8-8-8-8 */
571 #define V4L2_PIX_FMT_XBGR32 v4l2_fourcc('X', 'R', '2', '4') /* 32 BGRX-8-8-8-8 */
572 #define V4L2_PIX_FMT_BGRA32 v4l2_fourcc('R', 'A', '2', '4') /* 32 ABGR-8-8-8-8 */
573 #define V4L2_PIX_FMT_BGRX32 v4l2_fourcc('R', 'X', '2', '4') /* 32 XBGR-8-8-8-8 */
574 #define V4L2_PIX_FMT_RGB32 v4l2_fourcc('R', 'G', 'B', '4') /* 32 RGB-8-8-8-8 */
575 #define V4L2_PIX_FMT_RGBA32 v4l2_fourcc('A', 'B', '2', '4') /* 32 RGBA-8-8-8-8 */
576 #define V4L2_PIX_FMT_RGBX32 v4l2_fourcc('X', 'B', '2', '4') /* 32 RGBX-8-8-8-8 */
577 #define V4L2_PIX_FMT_ARGB32 v4l2_fourcc('B', 'A', '2', '4') /* 32 ARGB-8-8-8-8 */
578 #define V4L2_PIX_FMT_XRGB32 v4l2_fourcc('B', 'X', '2', '4') /* 32 XRGB-8-8-8-8 */
581 #define V4L2_PIX_FMT_GREY v4l2_fourcc('G', 'R', 'E', 'Y') /* 8 Greyscale */
590 /* Grey bit-packed formats */
591 #define V4L2_PIX_FMT_Y10BPACK v4l2_fourcc('Y', '1', '0', 'B') /* 10 Greyscale bit-packed */
593 #define V4L2_PIX_FMT_IPU3_Y10 v4l2_fourcc('i', 'p', '3', 'y') /* IPU3 packed 10-bit greyscale */
596 #define V4L2_PIX_FMT_PAL8 v4l2_fourcc('P', 'A', 'L', '8') /* 8 8-bit palette */
599 #define V4L2_PIX_FMT_UV8 v4l2_fourcc('U', 'V', '8', ' ') /* 8 UV 4:4 */
609 #define V4L2_PIX_FMT_YUV555 v4l2_fourcc('Y', 'U', 'V', 'O') /* 16 YUV-5-5-5 */
610 #define V4L2_PIX_FMT_YUV565 v4l2_fourcc('Y', 'U', 'V', 'P') /* 16 YUV-5-6-5 */
611 #define V4L2_PIX_FMT_YUV24 v4l2_fourcc('Y', 'U', 'V', '3') /* 24 YUV-8-8-8 */
612 #define V4L2_PIX_FMT_YUV32 v4l2_fourcc('Y', 'U', 'V', '4') /* 32 YUV-8-8-8-8 */
613 #define V4L2_PIX_FMT_AYUV32 v4l2_fourcc('A', 'Y', 'U', 'V') /* 32 AYUV-8-8-8-8 */
614 #define V4L2_PIX_FMT_XYUV32 v4l2_fourcc('X', 'Y', 'U', 'V') /* 32 XYUV-8-8-8-8 */
615 #define V4L2_PIX_FMT_VUYA32 v4l2_fourcc('V', 'U', 'Y', 'A') /* 32 VUYA-8-8-8-8 */
616 #define V4L2_PIX_FMT_VUYX32 v4l2_fourcc('V', 'U', 'Y', 'X') /* 32 VUYX-8-8-8-8 */
617 #define V4L2_PIX_FMT_YUVA32 v4l2_fourcc('Y', 'U', 'V', 'A') /* 32 YUVA-8-8-8-8 */
618 #define V4L2_PIX_FMT_YUVX32 v4l2_fourcc('Y', 'U', 'V', 'X') /* 32 YUVX-8-8-8-8 */
621 /* two planes -- one Y, one Cr + Cb interleaved */
628 #define V4L2_PIX_FMT_P010 v4l2_fourcc('P', '0', '1', '0') /* 24 Y/CbCr 4:2:0 10-bit per compone…
630 /* two non contiguous planes - one Y, one Cr + Cb interleaved */
636 /* three planes - Y Cb, Cr */
644 /* three non contiguous planes - Y, Cb, Cr */
656 #define V4L2_PIX_FMT_P010_4L4 v4l2_fourcc('T', '0', '1', '0') /* 12 Y/CbCr 4:2:0 10-bit 4x4 macrob…
661 #define V4L2_PIX_FMT_NV12M_8L128 v4l2_fourcc('N', 'A', '1', '2') /* Y/CbCr 4:2:0 8x128 tiles */
662 #define V4L2_PIX_FMT_NV12M_10BE_8L128 v4l2_fourcc_be('N', 'T', '1', '2') /* Y/CbCr 4:2:0 10-bit 8x1…
664 /* Bayer formats - see http://www.siliconimaging.com/RGB%20Bayer.htm */
665 #define V4L2_PIX_FMT_SBGGR8 v4l2_fourcc('B', 'A', '8', '1') /* 8 BGBG.. GRGR.. */
666 #define V4L2_PIX_FMT_SGBRG8 v4l2_fourcc('G', 'B', 'R', 'G') /* 8 GBGB.. RGRG.. */
667 #define V4L2_PIX_FMT_SGRBG8 v4l2_fourcc('G', 'R', 'B', 'G') /* 8 GRGR.. BGBG.. */
668 #define V4L2_PIX_FMT_SRGGB8 v4l2_fourcc('R', 'G', 'G', 'B') /* 8 RGRG.. GBGB.. */
671 #define V4L2_PIX_FMT_SGRBG10 v4l2_fourcc('B', 'A', '1', '0') /* 10 GRGR.. BGBG.. */
674 #define V4L2_PIX_FMT_SBGGR10P v4l2_fourcc('p', 'B', 'A', 'A')
675 #define V4L2_PIX_FMT_SGBRG10P v4l2_fourcc('p', 'G', 'A', 'A')
676 #define V4L2_PIX_FMT_SGRBG10P v4l2_fourcc('p', 'g', 'A', 'A')
677 #define V4L2_PIX_FMT_SRGGB10P v4l2_fourcc('p', 'R', 'A', 'A')
678 /* 10bit raw bayer a-law compressed to 8 bits */
679 #define V4L2_PIX_FMT_SBGGR10ALAW8 v4l2_fourcc('a', 'B', 'A', '8')
680 #define V4L2_PIX_FMT_SGBRG10ALAW8 v4l2_fourcc('a', 'G', 'A', '8')
681 #define V4L2_PIX_FMT_SGRBG10ALAW8 v4l2_fourcc('a', 'g', 'A', '8')
682 #define V4L2_PIX_FMT_SRGGB10ALAW8 v4l2_fourcc('a', 'R', 'A', '8')
683 /* 10bit raw bayer DPCM compressed to 8 bits */
684 #define V4L2_PIX_FMT_SBGGR10DPCM8 v4l2_fourcc('b', 'B', 'A', '8')
685 #define V4L2_PIX_FMT_SGBRG10DPCM8 v4l2_fourcc('b', 'G', 'A', '8')
687 #define V4L2_PIX_FMT_SRGGB10DPCM8 v4l2_fourcc('b', 'R', 'A', '8')
690 #define V4L2_PIX_FMT_SGRBG12 v4l2_fourcc('B', 'A', '1', '2') /* 12 GRGR.. BGBG.. */
716 #define V4L2_PIX_FMT_MJPEG v4l2_fourcc('M', 'J', 'P', 'G') /* Motion-JPEG */
719 #define V4L2_PIX_FMT_MPEG v4l2_fourcc('M', 'P', 'E', 'G') /* MPEG-1/2/4 Multiplexed */
721 #define V4L2_PIX_FMT_H264_NO_SC v4l2_fourcc('A', 'V', 'C', '1') /* H264 without start codes */
724 #define V4L2_PIX_FMT_MPEG1 v4l2_fourcc('M', 'P', 'G', '1') /* MPEG-1 ES */
725 #define V4L2_PIX_FMT_MPEG2 v4l2_fourcc('M', 'P', 'G', '2') /* MPEG-2 ES */
726 #define V4L2_PIX_FMT_MPEG2_SLICE v4l2_fourcc('M', 'G', '2', 'S') /* MPEG-2 parsed slice data */
727 #define V4L2_PIX_FMT_MPEG4 v4l2_fourcc('M', 'P', 'G', '4') /* MPEG-4 part 2 ES */
731 #define V4L2_PIX_FMT_VP8 v4l2_fourcc('V', 'P', '8', '0') /* VP8 */
732 #define V4L2_PIX_FMT_VP8_FRAME v4l2_fourcc('V', 'P', '8', 'F') /* VP8 parsed frame */
741 /* Vendor-specific formats */
742 #define V4L2_PIX_FMT_CPIA1 v4l2_fourcc('C', 'P', 'I', 'A') /* cpia1 YUV */
743 #define V4L2_PIX_FMT_WNVA v4l2_fourcc('W', 'N', 'V', 'A') /* Winnov hw compress */
751 #define V4L2_PIX_FMT_SPCA508 v4l2_fourcc('S', '5', '0', '8') /* YUVY per line */
760 #define V4L2_PIX_FMT_OV518 v4l2_fourcc('O', '5', '1', '8') /* ov518 JPEG */
761 #define V4L2_PIX_FMT_STV0680 v4l2_fourcc('S', '6', '8', '0') /* stv0680 bayer */
765 #define V4L2_PIX_FMT_JPGL v4l2_fourcc('J', 'P', 'G', 'L') /* JPEG-Lite */
768 #define V4L2_PIX_FMT_Y8I v4l2_fourcc('Y', '8', 'I', ' ') /* Greyscale 8-bit L/R interleaved */
769 #define V4L2_PIX_FMT_Y12I v4l2_fourcc('Y', '1', '2', 'I') /* Greyscale 12-bit L/R interleaved */
770 #define V4L2_PIX_FMT_Z16 v4l2_fourcc('Z', '1', '6', ' ') /* Depth data 16-bit */
772 …2_PIX_FMT_MM21 v4l2_fourcc('M', 'M', '2', '1') /* Mediatek 8-bit block mode, two non-contiguou…
773 …X_FMT_INZI v4l2_fourcc('I', 'N', 'Z', 'I') /* Intel Planar Greyscale 10-bit and Depth 16-bit */
774 #define V4L2_PIX_FMT_CNF4 v4l2_fourcc('C', 'N', 'F', '4') /* Intel 4-bit packed depth confidenc…
775 #define V4L2_PIX_FMT_HI240 v4l2_fourcc('H', 'I', '2', '4') /* BTTV 8-bit dithered RGB */
776 #define V4L2_PIX_FMT_QC08C v4l2_fourcc('Q', '0', '8', 'C') /* Qualcomm 8-bit compressed */
777 #define V4L2_PIX_FMT_QC10C v4l2_fourcc('Q', '1', '0', 'C') /* Qualcomm 10-bit compressed */
780 #define V4L2_PIX_FMT_IPU3_SBGGR10 v4l2_fourcc('i', 'p', '3', 'b') /* IPU3 packed 10-bit BGGR bayer …
781 #define V4L2_PIX_FMT_IPU3_SGBRG10 v4l2_fourcc('i', 'p', '3', 'g') /* IPU3 packed 10-bit GBRG bayer …
782 #define V4L2_PIX_FMT_IPU3_SGRBG10 v4l2_fourcc('i', 'p', '3', 'G') /* IPU3 packed 10-bit GRBG bayer …
783 #define V4L2_PIX_FMT_IPU3_SRGGB10 v4l2_fourcc('i', 'p', '3', 'r') /* IPU3 packed 10-bit RGGB bayer …
785 /* SDR formats - used only for Software Defined Radio devices */
786 #define V4L2_SDR_FMT_CU8 v4l2_fourcc('C', 'U', '0', '8') /* IQ u8 */
788 #define V4L2_SDR_FMT_CS8 v4l2_fourcc('C', 'S', '0', '8') /* complex s8 */
792 #define V4L2_SDR_FMT_PCU18BE v4l2_fourcc('P', 'C', '1', '8') /* planar complex u18be */
795 /* Touch formats - used for Touch devices */
796 #define V4L2_TCH_FMT_DELTA_TD16 v4l2_fourcc('T', 'D', '1', '6') /* 16-bit signed deltas */
797 #define V4L2_TCH_FMT_DELTA_TD08 v4l2_fourcc('T', 'D', '0', '8') /* 8-bit signed deltas */
798 #define V4L2_TCH_FMT_TU16 v4l2_fourcc('T', 'U', '1', '6') /* 16-bit unsigned touch data */
799 #define V4L2_TCH_FMT_TU08 v4l2_fourcc('T', 'U', '0', '8') /* 8-bit unsigned touch data */
801 /* Meta-data formats */
802 #define V4L2_META_FMT_VSP1_HGO v4l2_fourcc('V', 'S', 'P', 'H') /* R-Car VSP1 1-D Histogram */
803 #define V4L2_META_FMT_VSP1_HGT v4l2_fourcc('V', 'S', 'P', 'T') /* R-Car VSP1 2-D Histogram */
808 /* Vendor specific - used for RK_ISP1 camera sub-system */
809 #define V4L2_META_FMT_RK_ISP1_PARAMS v4l2_fourcc('R', 'K', '1', 'P') /* Rockchip ISP1 3A Parameters…
810 #define V4L2_META_FMT_RK_ISP1_STAT_3A v4l2_fourcc('R', 'K', '1', 'S') /* Rockchip ISP1 3A Statistic…
820 * F O R M A T E N U M E R A T I O N
845 * F R A M E S I Z E E N U M E R A T I O N
881 * F R A M E R A T E E N U M E R A T I O N
931 #define V4L2_TC_FLAG_DROPFRAME 0x0001 /* "drop-frame" mode */
968 * M E M O R Y - M A P P I N G B U F F E R S
974 * for 64-bit time_t. sparc64 is different from everyone
976 * second 64-bit word.
1010 * struct v4l2_plane - plane info for multi-planar buffers
1015 * the device memory for this plane (or is a "cookie" that
1017 * @userptr: when memory is V4L2_MEMORY_USERPTR, a userspace pointer
1019 * @fd: when memory is V4L2_MEMORY_DMABUF, a userspace file
1023 * unless there is a header in front of the data
1026 * Multi-planar buffers consist of one or more planes, e.g. an YCbCr buffer
1028 * components. Each plane can reside in a separate memory buffer, or even in
1029 * a completely separate memory node (e.g. in embedded devices).
1044 * struct v4l2_buffer - video buffer info
1057 * @offset: for non-multiplanar buffers with memory == V4L2_MEMORY_MMAP;
1059 * (or a "cookie" that should be passed to mmap() as offset)
1060 * @userptr: for non-multiplanar buffers with memory == V4L2_MEMORY_USERPTR;
1061 * a userspace pointer pointing to this buffer
1062 * @fd: for non-multiplanar buffers with memory == V4L2_MEMORY_DMABUF;
1063 * a userspace file descriptor associated with this buffer
1067 * @length: size in bytes of the buffer (NOT its payload) for single-plane
1069 * planes array for multi-plane buffers
1110 * v4l2_timeval_to_ns - Convert timeval to nanoseconds
1118 return (__u64)tv->tv_sec * 1000000000ULL + tv->tv_usec * 1000; in v4l2_timeval_to_ns()
1129 /* Image is a keyframe (I-frame) */
1131 /* Image is a P-frame */
1133 /* Image is a B-frame */
1163 * struct v4l2_exportbuffer - export of video buffer as DMABUF file descriptor
1174 * Contains data used for exporting a video buffer as DMABUF file descriptor.
1175 * The buffer is identified by a 'cookie' returned by VIDIOC_QUERYBUF
1178 * become a structure 'type' allowing an alternative layout of the structure
1191 * O V E R L A Y P R E V I E W
1244 * C A P T U R E P A R A M E T E R S
1250 __u32 extendedmode; /* Driver-specific extensions */
1263 __u32 extendedmode; /* Driver-specific extensions */
1269 * I N P U T I M A G E C R O P P I N G
1284 * struct v4l2_selection - selection info
1287 * defined in v4l2-common.h; V4L2_SEL_TGT_* .
1288 * @flags: constraints flags, defined in v4l2-common.h; V4L2_SEL_FLAG_*.
1292 * Hardware may use multiple helper windows to process a video stream.
1294 * an application and a driver.
1306 * A N A L O G V I D E O S T A N D A R D
1313 * include/dt-bindings/display/sdtv-standards.h SDTV_STD_* bit definitions.
1331 #define V4L2_STD_NTSC_M_JP ((v4l2_std_id)0x00002000) /* EIA-J */
1350 makes switch(__u64) to break. So, there's a hack on v4l2-common.c rounding
1354 v4l2-common.c should be fixed.
1363 * "Common" NTSC/M - It should be noticed that V4L2_STD_NTSC_443 is
1388 * "Common" PAL - This macro is there to be compatible with the old
1454 /** struct v4l2_bt_timings - BT.656/BT.1120 timing data
1459 * @pixelclock: Pixel clock in HZ. Ex. 74.25MHz->74250000
1475 * @cea861_vic: VIC code as per the CEA-861 standard.
1479 * A note regarding vertical interlaced timings: height refers to the total
1521 #define V4L2_DV_BT_STD_CEA861 (1 << 0) /* CEA-861 Digital TV Profile */
1532 * intervals are reduced, allowing a higher resolution over the same
1533 * bandwidth. This is a read-only flag.
1537 * CEA-861 specific: set for CEA-861 formats with a framerate of a multiple
1539 * This is a read-only flag.
1543 * CEA-861 specific: only valid for video transmitters, the flag is cleared
1545 * If the framerate of the format is a multiple of six, then the pixelclock
1547 * with 60 Hz based standards such as NTSC and PAL-M that use a framerate of
1553 * Specific to interlaced formats: if set, then field 1 is really one half-line
1554 * longer and field 2 is really one half-line shorter, so each field has
1555 * exactly the same number of half-lines. Whether half-lines can be detected
1560 * If set, then this is a Consumer Electronics (CE) video format. Such formats
1563 * use the range 16-235) as opposed to 0-255. All formats defined in CEA-861
1567 /* Some formats like SMPTE-125M have an interlaced signal with a odd
1580 * Identification Code as per the CEA-861 standard.
1588 #define V4L2_DV_FL_HAS_HDMI_VIC (1 << 8)
1590 * CEA-861 specific: only valid for video receivers.
1597 /* A few useful defines to calculate the total blanking and frame sizes */
1599 ((bt)->hfrontporch + (bt)->hsync + (bt)->hbackporch)
1601 ((bt)->width + V4L2_DV_BT_BLANKING_WIDTH(bt))
1603 ((bt)->vfrontporch + (bt)->vsync + (bt)->vbackporch + \
1604 ((bt)->interlaced ? \
1605 ((bt)->il_vfrontporch + (bt)->il_vsync + (bt)->il_vbackporch) : 0))
1607 ((bt)->height + V4L2_DV_BT_BLANKING_HEIGHT(bt))
1609 /** struct v4l2_dv_timings - DV timings
1625 /** struct v4l2_enum_dv_timings - DV timings enumeration
1628 * v4l-subdev nodes only)
1639 /** struct v4l2_bt_timings_cap - BT.656/BT.1120 timing capabilities
1644 * @min_pixelclock: Pixel clock in HZ. Ex. 74.25MHz->74250000
1645 * @max_pixelclock: Pixel clock in HZ. Ex. 74.25MHz->74250000
1671 /** struct v4l2_dv_timings_cap - DV timings capabilities
1674 * v4l-subdev nodes only)
1708 /* field 'status' - general */
1713 /* field 'status' - sensor orientation */
1718 /* field 'status' - analog */
1724 /* field 'status' - digital */
1729 /* field 'status' - VCR and set-top box */
1839 V4L2_CTRL_TYPE_BITMASK = 8,
1936 /* User-class control IDs defined by V4L2 */
2006 __u32 reserved[8];
2057 * A U D I O
2121 __u32 data[8];
2163 -1 specifies backward single stepping,
2165 <-1: reverse playback at (-speed/1000) of the normal speed. */
2179 * D A T A S E R V I C E S ( V B I )
2200 /* ITU-R start lines for each field */
2208 * This implements is a proposal V4L2 API to allow SLICED VBI
2215 /* service_lines[0][...] specifies lines 0-23 (1-23 used) of the first field
2216 service_lines[1][...] specifies lines 0-23 (1-23 used) of the second field
2217 (equals frame lines 313-336 for 625 line video
2218 standards, 263-286 for 525 line standards) */
2225 (WST), defined on ITU-R BT.653-2 */
2229 /* Closed Caption, defined on EIA-608 */
2231 /* Wide Screen System, defined on ITU-R BT1119.1 */
2239 /* service_lines[0][...] specifies lines 0-23 (1-23 used) of the first field
2240 service_lines[1][...] specifies lines 0-23 (1-23 used) of the second field
2241 (equals frame lines 313-336 for 625 line video
2242 standards, 263-286 for 525 line standards) */
2251 __u32 line; /* 1-23 */
2264 * MPEG-2 Program Pack that contains V4L2_MPEG_STREAM_VBI_FMT_IVTV Sliced VBI
2267 * Note, the MPEG-2 Program Pack and Private Stream 1 PES packet header
2268 * definitions are not included here. See the MPEG-2 specifications for details
2304 * A G G R E G A T E S T R U C T U R E S
2308 * struct v4l2_plane_pix_format - additional, per-plane format definition
2322 * struct v4l2_pix_format_mplane - multiplanar format definition
2328 * @plane_fmt: per-plane information
2357 * struct v4l2_sdr_format - SDR format definition
2369 * struct v4l2_meta_format - metadata format definition
2379 * struct v4l2_format - stream data format
2382 * @pix_mp: definition of a multiplanar image format
2400 __u8 raw_data[200]; /* user-defined */
2404 /* Stream type-dependent parameters
2411 __u8 raw_data[200]; /* user-defined */
2467 * struct v4l2_event_motion_det - motion detection event
2497 __u32 reserved[8];
2511 * A D V A N C E D D E B U G G I N G
2525 #define V4L2_CHIP_MATCH_I2C_ADDR 2 /* Match against I2C 7-bit address */
2555 * struct v4l2_create_buffers - VIDIOC_CREATE_BUFS argument
2585 #define VIDIOC_REQBUFS _IOWR('V', 8, struct v4l2_requestbuffers)
2678 drivers/media/v4l2-core/v4l2-compat-ioctl32.c as well! */
2680 #define BASE_VIDIOC_PRIVATE 192 /* 192-255 are private */