~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/Documentation/userspace-api/media/v4l/ext-ctrls-dv.rst

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  1 .. SPDX-License-Identifier: GFDL-1.1-no-invariants-or-later
  2 
  3 .. _dv-controls:
  4 
  5 *******************************
  6 Digital Video Control Reference
  7 *******************************
  8 
  9 The Digital Video control class is intended to control receivers and
 10 transmitters for `VGA <http://en.wikipedia.org/wiki/Vga>`__,
 11 `DVI <http://en.wikipedia.org/wiki/Digital_Visual_Interface>`__
 12 (Digital Visual Interface), HDMI (:ref:`hdmi`) and DisplayPort
 13 (:ref:`dp`). These controls are generally expected to be private to
 14 the receiver or transmitter subdevice that implements them, so they are
 15 only exposed on the ``/dev/v4l-subdev*`` device node.
 16 
 17 .. note::
 18 
 19    Note that these devices can have multiple input or output pads which are
 20    hooked up to e.g. HDMI connectors. Even though the subdevice will
 21    receive or transmit video from/to only one of those pads, the other pads
 22    can still be active when it comes to EDID (Extended Display
 23    Identification Data, :ref:`vesaedid`) and HDCP (High-bandwidth Digital
 24    Content Protection System, :ref:`hdcp`) processing, allowing the
 25    device to do the fairly slow EDID/HDCP handling in advance. This allows
 26    for quick switching between connectors.
 27 
 28 These pads appear in several of the controls in this section as
 29 bitmasks, one bit for each pad. Bit 0 corresponds to pad 0, bit 1 to pad
 30 1, etc. The maximum value of the control is the set of valid pads.
 31 
 32 
 33 .. _dv-control-id:
 34 
 35 Digital Video Control IDs
 36 =========================
 37 
 38 ``V4L2_CID_DV_CLASS (class)``
 39     The Digital Video class descriptor.
 40 
 41 ``V4L2_CID_DV_TX_HOTPLUG (bitmask)``
 42     Many connectors have a hotplug pin which is high if EDID information
 43     is available from the source. This control shows the state of the
 44     hotplug pin as seen by the transmitter. Each bit corresponds to an
 45     output pad on the transmitter. If an output pad does not have an
 46     associated hotplug pin, then the bit for that pad will be 0. This
 47     read-only control is applicable to DVI-D, HDMI and DisplayPort
 48     connectors.
 49 
 50 ``V4L2_CID_DV_TX_RXSENSE (bitmask)``
 51     Rx Sense is the detection of pull-ups on the TMDS clock lines. This
 52     normally means that the sink has left/entered standby (i.e. the
 53     transmitter can sense that the receiver is ready to receive video).
 54     Each bit corresponds to an output pad on the transmitter. If an
 55     output pad does not have an associated Rx Sense, then the bit for
 56     that pad will be 0. This read-only control is applicable to DVI-D
 57     and HDMI devices.
 58 
 59 ``V4L2_CID_DV_TX_EDID_PRESENT (bitmask)``
 60     When the transmitter sees the hotplug signal from the receiver it
 61     will attempt to read the EDID. If set, then the transmitter has read
 62     at least the first block (= 128 bytes). Each bit corresponds to an
 63     output pad on the transmitter. If an output pad does not support
 64     EDIDs, then the bit for that pad will be 0. This read-only control
 65     is applicable to VGA, DVI-A/D, HDMI and DisplayPort connectors.
 66 
 67 ``V4L2_CID_DV_TX_MODE``
 68     (enum)
 69 
 70 enum v4l2_dv_tx_mode -
 71     HDMI transmitters can transmit in DVI-D mode (just video) or in HDMI
 72     mode (video + audio + auxiliary data). This control selects which
 73     mode to use: V4L2_DV_TX_MODE_DVI_D or V4L2_DV_TX_MODE_HDMI.
 74     This control is applicable to HDMI connectors.
 75 
 76 ``V4L2_CID_DV_TX_RGB_RANGE``
 77     (enum)
 78 
 79 enum v4l2_dv_rgb_range -
 80     Select the quantization range for RGB output. V4L2_DV_RANGE_AUTO
 81     follows the RGB quantization range specified in the standard for the
 82     video interface (ie. :ref:`cea861` for HDMI).
 83     V4L2_DV_RANGE_LIMITED and V4L2_DV_RANGE_FULL override the
 84     standard to be compatible with sinks that have not implemented the
 85     standard correctly (unfortunately quite common for HDMI and DVI-D).
 86     Full range allows all possible values to be used whereas limited
 87     range sets the range to (16 << (N-8)) - (235 << (N-8)) where N is
 88     the number of bits per component. This control is applicable to VGA,
 89     DVI-A/D, HDMI and DisplayPort connectors.
 90 
 91 ``V4L2_CID_DV_TX_IT_CONTENT_TYPE``
 92     (enum)
 93 
 94 enum v4l2_dv_it_content_type -
 95     Configures the IT Content Type of the transmitted video. This
 96     information is sent over HDMI and DisplayPort connectors as part of
 97     the AVI InfoFrame. The term 'IT Content' is used for content that
 98     originates from a computer as opposed to content from a TV broadcast
 99     or an analog source. The enum v4l2_dv_it_content_type defines
100     the possible content types:
101 
102 .. tabularcolumns:: |p{7.3cm}|p{10.2cm}|
103 
104 .. flat-table::
105     :header-rows:  0
106     :stub-columns: 0
107 
108     * - ``V4L2_DV_IT_CONTENT_TYPE_GRAPHICS``
109       - Graphics content. Pixel data should be passed unfiltered and
110         without analog reconstruction.
111     * - ``V4L2_DV_IT_CONTENT_TYPE_PHOTO``
112       - Photo content. The content is derived from digital still pictures.
113         The content should be passed through with minimal scaling and
114         picture enhancements.
115     * - ``V4L2_DV_IT_CONTENT_TYPE_CINEMA``
116       - Cinema content.
117     * - ``V4L2_DV_IT_CONTENT_TYPE_GAME``
118       - Game content. Audio and video latency should be minimized.
119     * - ``V4L2_DV_IT_CONTENT_TYPE_NO_ITC``
120       - No IT Content information is available and the ITC bit in the AVI
121         InfoFrame is set to 0.
122 
123 
124 
125 ``V4L2_CID_DV_RX_POWER_PRESENT (bitmask)``
126     Detects whether the receiver receives power from the source (e.g.
127     HDMI carries 5V on one of the pins). This is often used to power an
128     eeprom which contains EDID information, such that the source can
129     read the EDID even if the sink is in standby/power off. Each bit
130     corresponds to an input pad on the receiver. If an input pad
131     cannot detect whether power is present, then the bit for that pad
132     will be 0. This read-only control is applicable to DVI-D, HDMI and
133     DisplayPort connectors.
134 
135 ``V4L2_CID_DV_RX_RGB_RANGE``
136     (enum)
137 
138 enum v4l2_dv_rgb_range -
139     Select the quantization range for RGB input. V4L2_DV_RANGE_AUTO
140     follows the RGB quantization range specified in the standard for the
141     video interface (ie. :ref:`cea861` for HDMI).
142     V4L2_DV_RANGE_LIMITED and V4L2_DV_RANGE_FULL override the
143     standard to be compatible with sources that have not implemented the
144     standard correctly (unfortunately quite common for HDMI and DVI-D).
145     Full range allows all possible values to be used whereas limited
146     range sets the range to (16 << (N-8)) - (235 << (N-8)) where N is
147     the number of bits per component. This control is applicable to VGA,
148     DVI-A/D, HDMI and DisplayPort connectors.
149 
150 ``V4L2_CID_DV_RX_IT_CONTENT_TYPE``
151     (enum)
152 
153 enum v4l2_dv_it_content_type -
154     Reads the IT Content Type of the received video. This information is
155     sent over HDMI and DisplayPort connectors as part of the AVI
156     InfoFrame. The term 'IT Content' is used for content that originates
157     from a computer as opposed to content from a TV broadcast or an
158     analog source. See ``V4L2_CID_DV_TX_IT_CONTENT_TYPE`` for the
159     available content types.

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php