Documentation/userspace-api/media/v4l/func-ioctl.rst
Source file repositories/reference/linux-study-clean/Documentation/userspace-api/media/v4l/func-ioctl.rst
File Facts
- System
- Linux kernel
- Corpus path
Documentation/userspace-api/media/v4l/func-ioctl.rst- Extension
.rst- Size
- 1499 bytes
- Lines
- 59
- 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.
Dependency Surface
sys/ioctl.h
Detected Declarations
- No top-level syscall, struct, function, initcall, or export declaration detected by the generator.
Annotated Snippet
.. SPDX-License-Identifier: GFDL-1.1-no-invariants-or-later
.. c:namespace:: V4L
.. _func-ioctl:
************
V4L2 ioctl()
************
Name
====
v4l2-ioctl - Program a V4L2 device
Synopsis
========
.. code-block:: c
#include <sys/ioctl.h>
``int ioctl(int fd, int request, void *argp)``
Arguments
=========
``fd``
File descriptor returned by :c:func:`open()`.
``request``
V4L2 ioctl request code as defined in the ``videodev2.h`` header
file, for example VIDIOC_QUERYCAP.
``argp``
Pointer to a function parameter, usually a structure.
Description
===========
The :ref:`ioctl() <func-ioctl>` function is used to program V4L2 devices. The
argument ``fd`` must be an open file descriptor. An ioctl ``request``
has encoded in it whether the argument is an input, output or read/write
parameter, and the size of the argument ``argp`` in bytes. Macros and
defines specifying V4L2 ioctl requests are located in the
``videodev2.h`` header file. Applications should use their own copy, not
include the version in the kernel sources on the system they compile on.
All V4L2 ioctl requests, their respective function and parameters are
specified in :ref:`user-func`.
Return Value
============
On success 0 is returned, on error -1 and the ``errno`` variable is set
appropriately. The generic error codes are described at the
:ref:`Generic Error Codes <gen-errors>` chapter.
When an ioctl that takes an output or read/write parameter fails, the
parameter remains unmodified.
Annotation
- Immediate include surface: `sys/ioctl.h`.
- Atlas domain: Support Tooling And Documentation / Documentation.
- Implementation status: atlas-only.
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.