Merge tag 'x86-urgent-2020-10-27' of git://git.kernel.org/pub/scm/linux/kernel/git...
[linux-2.6-microblaze.git] / Documentation / userspace-api / media / v4l / ext-ctrls-image-process.rst
1 .. SPDX-License-Identifier: GFDL-1.1-no-invariants-or-later
2
3 .. _image-process-controls:
4
5 *******************************
6 Image Process Control Reference
7 *******************************
8
9 The Image Process control class is intended for low-level control of
10 image processing functions. Unlike ``V4L2_CID_IMAGE_SOURCE_CLASS``, the
11 controls in this class affect processing the image, and do not control
12 capturing of it.
13
14
15 .. _image-process-control-id:
16
17 Image Process Control IDs
18 =========================
19
20 ``V4L2_CID_IMAGE_PROC_CLASS (class)``
21     The IMAGE_PROC class descriptor.
22
23 ``V4L2_CID_LINK_FREQ (integer menu)``
24     Data bus frequency. Together with the media bus pixel code, bus type
25     (clock cycles per sample), the data bus frequency defines the pixel
26     rate (``V4L2_CID_PIXEL_RATE``) in the pixel array (or possibly
27     elsewhere, if the device is not an image sensor). The frame rate can
28     be calculated from the pixel clock, image width and height and
29     horizontal and vertical blanking. While the pixel rate control may
30     be defined elsewhere than in the subdev containing the pixel array,
31     the frame rate cannot be obtained from that information. This is
32     because only on the pixel array it can be assumed that the vertical
33     and horizontal blanking information is exact: no other blanking is
34     allowed in the pixel array. The selection of frame rate is performed
35     by selecting the desired horizontal and vertical blanking. The unit
36     of this control is Hz.
37
38 ``V4L2_CID_PIXEL_RATE (64-bit integer)``
39     Pixel rate in the source pads of the subdev. This control is
40     read-only and its unit is pixels / second.
41
42 ``V4L2_CID_TEST_PATTERN (menu)``
43     Some capture/display/sensor devices have the capability to generate
44     test pattern images. These hardware specific test patterns can be
45     used to test if a device is working properly.
46
47 ``V4L2_CID_DEINTERLACING_MODE (menu)``
48     The video deinterlacing mode (such as Bob, Weave, ...). The menu items are
49     driver specific and are documented in :ref:`uapi-v4l-drivers`.
50
51 ``V4L2_CID_DIGITAL_GAIN (integer)``
52     Digital gain is the value by which all colour components
53     are multiplied by. Typically the digital gain applied is the
54     control value divided by e.g. 0x100, meaning that to get no
55     digital gain the control value needs to be 0x100. The no-gain
56     configuration is also typically the default.