Lines Matching +full:sub +full:- +full:devices
1 .. SPDX-License-Identifier: GFDL-1.1-no-invariants-or-later
7 Opening and Closing Devices
16 devices or peripherals, each of which have their own driver.
22 the hardware, which may also expose device nodes, called V4L2 sub-devices.
24 When such V4L2 sub-devices are exposed, they allow controlling those
25 other hardware components - usually connected via a serial bus (like
26 I²C, SMBus or SPI). Depending on the bridge driver, those sub-devices
29 :ref:`V4L2 sub-devices <subdev>`.
31 The devices that require the use of the
32 :ref:`Media Controller <media_controller>` are called **MC-centric**
33 devices. The devices that are fully controlled via V4L2 device nodes
34 are called **video-node-centric**.
36 Userspace can check if a V4L2 hardware peripheral is MC-centric by
38 :ref:`device_caps field <device-capabilities>`.
41 then it is MC-centric, otherwise, it is video-node-centric.
43 It is required for MC-centric drivers to identify the V4L2
44 sub-devices and to configure the pipelines via the
46 Also, the sub-devices' configuration shall be controlled via the
47 :ref:`sub-device API <subdev>`.
51 A video-node-centric may still provide media-controller and
52 sub-device interfaces as well.
54 However, in that case the media-controller and the sub-device
55 interfaces are read-only and just provide information about the
80 ``/dev/videoX`` Video and metadata for capture/output devices
84 ``/dev/v4l-touchX`` Touch sensors
85 ``/dev/v4l-subdevX`` Video sub-devices (used by sensors and other
89 Where ``X`` is a non-negative integer.
93 1. The actual device node name is system-dependent, as udev rules may apply.
97 ``/dev/v4l/by-id/`` and ``/dev/v4l/by-path/`` directories containing
102 ├── by-id
103 │ └── usb-OmniVision._USB_Camera-B4.04.27.1-video-index0 -> ../../video0
104 └── by-path
105 └── pci-0000:00:14.0-usb-0:2:1.0-video-index0 -> ../../video0
107 .. [#] **V4L2 sub-device nodes** (e. g. ``/dev/v4l-subdevX``) use a different
113 of leaving it to chance. When the driver supports multiple devices of
117 .. code-block:: none
136 ranges. These ranges are listed in :ref:`devices`.
139 operation and devices cannot be opened by major and minor number. That
146 Related Devices
149 Devices can support several functions. For example video capturing, VBI
166 devices with optional ALSA audio mixer devices.
168 One problem with all these devices is that the V4L2 API makes no
174 `v4l-utils <http://git.linuxtv.org/cgit.cgi/v4l-utils.git/>`__ git
176 towards both Media Controller-based devices and devices that do not use
178 linux-media mailing list:
184 V4L2 devices can be opened more than once. [#f1]_ When this is supported
206 the priority mechanism described in :ref:`app-pri`.
219 To open and close V4L2 devices applications use the
221 respectively. Devices are programmed using the
222 :ref:`ioctl() <func-ioctl>` function as explained in the following