Documentation/userspace-api/media/v4l/videodev2.h.rst.exceptions
Source file repositories/reference/linux-study-clean/Documentation/userspace-api/media/v4l/videodev2.h.rst.exceptions
File Facts
- System
- Linux kernel
- Corpus path
Documentation/userspace-api/media/v4l/videodev2.h.rst.exceptions- Extension
.exceptions- Size
- 28630 bytes
- Lines
- 617
- Domain
- Support Tooling And Documentation
- Bucket
- Documentation
- Inferred role
- Support Tooling And Documentation: Documentation
- Status
- atlas-only
Why This File Exists
Repository support layer: documentation, build tooling, samples, user-space helper tools, generated initramfs support, licenses, and validation utilities.
- Repository support layer: documentation, build tooling, samples, user-space helper tools, generated initramfs support, licenses, and validation utilities.
- Touches IRQ or DMA behavior; this matters for the representative real-device path.
- Defines or uses C structs; map object ownership, embedded links, reference counts, and lock ownership.
Dependency Surface
- No C-style include directives detected by the generator.
Detected Declarations
- No top-level syscall, struct, function, initcall, or export declaration detected by the generator.
Annotated Snippet
# SPDX-License-Identifier: GPL-2.0
# All symbols are mapped inside V4L C domain namespace
namespace V4L
# Ignore header name
ignore define _UAPI__LINUX_VIDEODEV2_H
#
# The cross reference valitator for videodev2.h DocBook never cared
# about enum symbols or defines. Yet, they're all (or almost all?)
# handled inside V4L API sections. So, for now, it is safe to just
# ignore. This should be revisited, as validating it helps to avoid
# having something not documented at the uAPI.
#
# Those symbols should not be used by uAPI - don't document them
ignore symbol V4L2_BUF_TYPE_PRIVATE
ignore symbol V4L2_TUNER_DIGITAL_TV
ignore symbol V4L2_COLORSPACE_BT878
ignore struct __kernel_v4l2_timeval
# Documented enum v4l2_field
replace symbol V4L2_FIELD_ALTERNATE :c:type:`V4L.v4l2_field`
replace symbol V4L2_FIELD_ANY :c:type:`V4L.v4l2_field`
replace symbol V4L2_FIELD_BOTTOM :c:type:`V4L.v4l2_field`
replace symbol V4L2_FIELD_INTERLACED :c:type:`V4L.v4l2_field`
replace symbol V4L2_FIELD_INTERLACED_BT :c:type:`V4L.v4l2_field`
replace symbol V4L2_FIELD_INTERLACED_TB :c:type:`V4L.v4l2_field`
replace symbol V4L2_FIELD_NONE :c:type:`V4L.v4l2_field`
replace symbol V4L2_FIELD_SEQ_BT :c:type:`V4L.v4l2_field`
replace symbol V4L2_FIELD_SEQ_TB :c:type:`V4L.v4l2_field`
replace symbol V4L2_FIELD_TOP :c:type:`V4L.v4l2_field`
# Documented enum v4l2_buf_type
replace symbol V4L2_BUF_TYPE_META_CAPTURE :c:type:`V4L.v4l2_buf_type`
replace symbol V4L2_BUF_TYPE_META_OUTPUT :c:type:`V4L.v4l2_buf_type`
replace symbol V4L2_BUF_TYPE_SDR_CAPTURE :c:type:`V4L.v4l2_buf_type`
replace symbol V4L2_BUF_TYPE_SDR_OUTPUT :c:type:`V4L.v4l2_buf_type`
replace symbol V4L2_BUF_TYPE_SLICED_VBI_CAPTURE :c:type:`V4L.v4l2_buf_type`
replace symbol V4L2_BUF_TYPE_SLICED_VBI_OUTPUT :c:type:`V4L.v4l2_buf_type`
replace symbol V4L2_BUF_TYPE_VBI_CAPTURE :c:type:`V4L.v4l2_buf_type`
replace symbol V4L2_BUF_TYPE_VBI_OUTPUT :c:type:`V4L.v4l2_buf_type`
replace symbol V4L2_BUF_TYPE_VIDEO_CAPTURE :c:type:`V4L.v4l2_buf_type`
replace symbol V4L2_BUF_TYPE_VIDEO_CAPTURE_MPLANE :c:type:`V4L.v4l2_buf_type`
replace symbol V4L2_BUF_TYPE_VIDEO_OUTPUT :c:type:`V4L.v4l2_buf_type`
replace symbol V4L2_BUF_TYPE_VIDEO_OUTPUT_MPLANE :c:type:`V4L.v4l2_buf_type`
replace symbol V4L2_BUF_TYPE_VIDEO_OUTPUT_OVERLAY :c:type:`V4L.v4l2_buf_type`
replace symbol V4L2_BUF_TYPE_VIDEO_OVERLAY :c:type:`V4L.v4l2_buf_type`
# Documented enum v4l2_tuner_type
replace symbol V4L2_TUNER_ANALOG_TV :c:type:`V4L.v4l2_tuner_type`
replace symbol V4L2_TUNER_RADIO :c:type:`V4L.v4l2_tuner_type`
replace symbol V4L2_TUNER_RF :c:type:`V4L.v4l2_tuner_type`
replace symbol V4L2_TUNER_SDR :c:type:`V4L.v4l2_tuner_type`
# Documented enum v4l2_memory
replace symbol V4L2_MEMORY_DMABUF :c:type:`V4L.v4l2_memory`
replace symbol V4L2_MEMORY_MMAP :c:type:`V4L.v4l2_memory`
replace symbol V4L2_MEMORY_OVERLAY :c:type:`V4L.v4l2_memory`
replace symbol V4L2_MEMORY_USERPTR :c:type:`V4L.v4l2_memory`
# Documented enum v4l2_colorspace
replace symbol V4L2_COLORSPACE_470_SYSTEM_BG :c:type:`V4L.v4l2_colorspace`
replace symbol V4L2_COLORSPACE_470_SYSTEM_M :c:type:`V4L.v4l2_colorspace`
replace symbol V4L2_COLORSPACE_OPRGB :c:type:`V4L.v4l2_colorspace`
replace define V4L2_COLORSPACE_ADOBERGB :c:type:`V4L.v4l2_colorspace`
replace symbol V4L2_COLORSPACE_BT2020 :c:type:`V4L.v4l2_colorspace`
replace symbol V4L2_COLORSPACE_DCI_P3 :c:type:`V4L.v4l2_colorspace`
replace symbol V4L2_COLORSPACE_DEFAULT :c:type:`V4L.v4l2_colorspace`
Annotation
- Atlas domain: Support Tooling And Documentation / Documentation.
- Implementation status: atlas-only.
- IRQ or DMA behavior appears here, which is relevant to the selected PCIe/NVMe device path.
Implementation Notes
- This generated page is the file-by-file coverage layer; curated subsystem chapters should link here when they synthesize a multi-file control flow.
- Core OS pages should be promoted from atlas-only to deep-reviewed when they explain data structures, invariants, locking, lifecycle, and C implementation snippets.
- Driver-family pages are intentionally pattern-oriented unless they are part of the selected PCIe/NVMe representative device path.