aboutsummaryrefslogtreecommitdiffstats
path: root/Documentation/DocBook/media/v4l/controls.xml
diff options
context:
space:
mode:
Diffstat (limited to 'Documentation/DocBook/media/v4l/controls.xml')
-rw-r--r--Documentation/DocBook/media/v4l/controls.xml614
1 files changed, 387 insertions, 227 deletions
diff --git a/Documentation/DocBook/media/v4l/controls.xml b/Documentation/DocBook/media/v4l/controls.xml
index b0964fb4e834..272a5f718509 100644
--- a/Documentation/DocBook/media/v4l/controls.xml
+++ b/Documentation/DocBook/media/v4l/controls.xml
@@ -3505,7 +3505,7 @@ This encodes up to 31 pre-defined programme types.</entry>
3505 </row> 3505 </row>
3506 <row><entry spanname="descr">Sets the Programme Service name (PS_NAME) for transmission. 3506 <row><entry spanname="descr">Sets the Programme Service name (PS_NAME) for transmission.
3507It is intended for static display on a receiver. It is the primary aid to listeners in programme service 3507It is intended for static display on a receiver. It is the primary aid to listeners in programme service
3508identification and selection. In Annex E of <xref linkend="en50067" />, the RDS specification, 3508identification and selection. In Annex E of <xref linkend="iec62106" />, the RDS specification,
3509there is a full description of the correct character encoding for Programme Service name strings. 3509there is a full description of the correct character encoding for Programme Service name strings.
3510Also from RDS specification, PS is usually a single eight character text. However, it is also possible 3510Also from RDS specification, PS is usually a single eight character text. However, it is also possible
3511to find receivers which can scroll strings sized as 8 x N characters. So, this control must be configured 3511to find receivers which can scroll strings sized as 8 x N characters. So, this control must be configured
@@ -3519,7 +3519,7 @@ with steps of 8 characters. The result is it must always contain a string with s
3519what is being broadcasted. RDS Radio Text can be applied when broadcaster wishes to transmit longer PS names, 3519what is being broadcasted. RDS Radio Text can be applied when broadcaster wishes to transmit longer PS names,
3520programme-related information or any other text. In these cases, RadioText should be used in addition to 3520programme-related information or any other text. In these cases, RadioText should be used in addition to
3521<constant>V4L2_CID_RDS_TX_PS_NAME</constant>. The encoding for Radio Text strings is also fully described 3521<constant>V4L2_CID_RDS_TX_PS_NAME</constant>. The encoding for Radio Text strings is also fully described
3522in Annex E of <xref linkend="en50067" />. The length of Radio Text strings depends on which RDS Block is being 3522in Annex E of <xref linkend="iec62106" />. The length of Radio Text strings depends on which RDS Block is being
3523used to transmit it, either 32 (2A block) or 64 (2B block). However, it is also possible 3523used to transmit it, either 32 (2A block) or 64 (2B block). However, it is also possible
3524to find receivers which can scroll strings sized as 32 x N or 64 x N characters. So, this control must be configured 3524to find receivers which can scroll strings sized as 32 x N or 64 x N characters. So, this control must be configured
3525with steps of 32 or 64 characters. The result is it must always contain a string with size multiple of 32 or 64. </entry> 3525with steps of 32 or 64 characters. The result is it must always contain a string with size multiple of 32 or 64. </entry>
@@ -3650,7 +3650,7 @@ manually or automatically if set to zero. Unit, range and step are driver-specif
3650 </table> 3650 </table>
3651 3651
3652<para>For more details about RDS specification, refer to 3652<para>For more details about RDS specification, refer to
3653<xref linkend="en50067" /> document, from CENELEC.</para> 3653<xref linkend="iec62106" /> document, from CENELEC.</para>
3654 </section> 3654 </section>
3655 3655
3656 <section id="flash-controls"> 3656 <section id="flash-controls">
@@ -3717,232 +3717,231 @@ interface and may change in the future.</para>
3717 use case involving camera or individually. 3717 use case involving camera or individually.
3718 </para> 3718 </para>
3719 3719
3720 </section>
3721 3720
3721 <table pgwide="1" frame="none" id="flash-control-id">
3722 <title>Flash Control IDs</title>
3723
3724 <tgroup cols="4">
3725 <colspec colname="c1" colwidth="1*" />
3726 <colspec colname="c2" colwidth="6*" />
3727 <colspec colname="c3" colwidth="2*" />
3728 <colspec colname="c4" colwidth="6*" />
3729 <spanspec namest="c1" nameend="c2" spanname="id" />
3730 <spanspec namest="c2" nameend="c4" spanname="descr" />
3731 <thead>
3732 <row>
3733 <entry spanname="id" align="left">ID</entry>
3734 <entry align="left">Type</entry>
3735 </row><row rowsep="1"><entry spanname="descr" align="left">Description</entry>
3736 </row>
3737 </thead>
3738 <tbody valign="top">
3739 <row><entry></entry></row>
3740 <row>
3741 <entry spanname="id"><constant>V4L2_CID_FLASH_CLASS</constant></entry>
3742 <entry>class</entry>
3743 </row>
3744 <row>
3745 <entry spanname="descr">The FLASH class descriptor.</entry>
3746 </row>
3747 <row>
3748 <entry spanname="id"><constant>V4L2_CID_FLASH_LED_MODE</constant></entry>
3749 <entry>menu</entry>
3750 </row>
3751 <row id="v4l2-flash-led-mode">
3752 <entry spanname="descr">Defines the mode of the flash LED,
3753 the high-power white LED attached to the flash controller.
3754 Setting this control may not be possible in presence of
3755 some faults. See V4L2_CID_FLASH_FAULT.</entry>
3756 </row>
3757 <row>
3758 <entrytbl spanname="descr" cols="2">
3759 <tbody valign="top">
3760 <row>
3761 <entry><constant>V4L2_FLASH_LED_MODE_NONE</constant></entry>
3762 <entry>Off.</entry>
3763 </row>
3764 <row>
3765 <entry><constant>V4L2_FLASH_LED_MODE_FLASH</constant></entry>
3766 <entry>Flash mode.</entry>
3767 </row>
3768 <row>
3769 <entry><constant>V4L2_FLASH_LED_MODE_TORCH</constant></entry>
3770 <entry>Torch mode. See V4L2_CID_FLASH_TORCH_INTENSITY.</entry>
3771 </row>
3772 </tbody>
3773 </entrytbl>
3774 </row>
3775 <row>
3776 <entry spanname="id"><constant>V4L2_CID_FLASH_STROBE_SOURCE</constant></entry>
3777 <entry>menu</entry>
3778 </row>
3779 <row id="v4l2-flash-strobe-source"><entry
3780 spanname="descr">Defines the source of the flash LED
3781 strobe.</entry>
3782 </row>
3783 <row>
3784 <entrytbl spanname="descr" cols="2">
3785 <tbody valign="top">
3786 <row>
3787 <entry><constant>V4L2_FLASH_STROBE_SOURCE_SOFTWARE</constant></entry>
3788 <entry>The flash strobe is triggered by using
3789 the V4L2_CID_FLASH_STROBE control.</entry>
3790 </row>
3791 <row>
3792 <entry><constant>V4L2_FLASH_STROBE_SOURCE_EXTERNAL</constant></entry>
3793 <entry>The flash strobe is triggered by an
3794 external source. Typically this is a sensor,
3795 which makes it possible to synchronises the
3796 flash strobe start to exposure start.</entry>
3797 </row>
3798 </tbody>
3799 </entrytbl>
3800 </row>
3801 <row>
3802 <entry spanname="id"><constant>V4L2_CID_FLASH_STROBE</constant></entry>
3803 <entry>button</entry>
3804 </row>
3805 <row>
3806 <entry spanname="descr">Strobe flash. Valid when
3807 V4L2_CID_FLASH_LED_MODE is set to
3808 V4L2_FLASH_LED_MODE_FLASH and V4L2_CID_FLASH_STROBE_SOURCE
3809 is set to V4L2_FLASH_STROBE_SOURCE_SOFTWARE. Setting this
3810 control may not be possible in presence of some faults.
3811 See V4L2_CID_FLASH_FAULT.</entry>
3812 </row>
3813 <row>
3814 <entry spanname="id"><constant>V4L2_CID_FLASH_STROBE_STOP</constant></entry>
3815 <entry>button</entry>
3816 </row>
3817 <row><entry spanname="descr">Stop flash strobe immediately.</entry>
3818 </row>
3819 <row>
3820 <entry spanname="id"><constant>V4L2_CID_FLASH_STROBE_STATUS</constant></entry>
3821 <entry>boolean</entry>
3822 </row>
3823 <row>
3824 <entry spanname="descr">Strobe status: whether the flash
3825 is strobing at the moment or not. This is a read-only
3826 control.</entry>
3827 </row>
3828 <row>
3829 <entry spanname="id"><constant>V4L2_CID_FLASH_TIMEOUT</constant></entry>
3830 <entry>integer</entry>
3831 </row>
3832 <row>
3833 <entry spanname="descr">Hardware timeout for flash. The
3834 flash strobe is stopped after this period of time has
3835 passed from the start of the strobe.</entry>
3836 </row>
3837 <row>
3838 <entry spanname="id"><constant>V4L2_CID_FLASH_INTENSITY</constant></entry>
3839 <entry>integer</entry>
3840 </row>
3841 <row>
3842 <entry spanname="descr">Intensity of the flash strobe when
3843 the flash LED is in flash mode
3844 (V4L2_FLASH_LED_MODE_FLASH). The unit should be milliamps
3845 (mA) if possible.</entry>
3846 </row>
3847 <row>
3848 <entry spanname="id"><constant>V4L2_CID_FLASH_TORCH_INTENSITY</constant></entry>
3849 <entry>integer</entry>
3850 </row>
3851 <row>
3852 <entry spanname="descr">Intensity of the flash LED in
3853 torch mode (V4L2_FLASH_LED_MODE_TORCH). The unit should be
3854 milliamps (mA) if possible. Setting this control may not
3855 be possible in presence of some faults. See
3856 V4L2_CID_FLASH_FAULT.</entry>
3857 </row>
3858 <row>
3859 <entry spanname="id"><constant>V4L2_CID_FLASH_INDICATOR_INTENSITY</constant></entry>
3860 <entry>integer</entry>
3861 </row>
3862 <row>
3863 <entry spanname="descr">Intensity of the indicator LED.
3864 The indicator LED may be fully independent of the flash
3865 LED. The unit should be microamps (uA) if possible.</entry>
3866 </row>
3867 <row>
3868 <entry spanname="id"><constant>V4L2_CID_FLASH_FAULT</constant></entry>
3869 <entry>bitmask</entry>
3870 </row>
3871 <row>
3872 <entry spanname="descr">Faults related to the flash. The
3873 faults tell about specific problems in the flash chip
3874 itself or the LEDs attached to it. Faults may prevent
3875 further use of some of the flash controls. In particular,
3876 V4L2_CID_FLASH_LED_MODE is set to V4L2_FLASH_LED_MODE_NONE
3877 if the fault affects the flash LED. Exactly which faults
3878 have such an effect is chip dependent. Reading the faults
3879 resets the control and returns the chip to a usable state
3880 if possible.</entry>
3881 </row>
3882 <row>
3883 <entrytbl spanname="descr" cols="2">
3884 <tbody valign="top">
3885 <row>
3886 <entry><constant>V4L2_FLASH_FAULT_OVER_VOLTAGE</constant></entry>
3887 <entry>Flash controller voltage to the flash LED
3888 has exceeded the limit specific to the flash
3889 controller.</entry>
3890 </row>
3891 <row>
3892 <entry><constant>V4L2_FLASH_FAULT_TIMEOUT</constant></entry>
3893 <entry>The flash strobe was still on when
3894 the timeout set by the user ---
3895 V4L2_CID_FLASH_TIMEOUT control --- has expired.
3896 Not all flash controllers may set this in all
3897 such conditions.</entry>
3898 </row>
3899 <row>
3900 <entry><constant>V4L2_FLASH_FAULT_OVER_TEMPERATURE</constant></entry>
3901 <entry>The flash controller has overheated.</entry>
3902 </row>
3903 <row>
3904 <entry><constant>V4L2_FLASH_FAULT_SHORT_CIRCUIT</constant></entry>
3905 <entry>The short circuit protection of the flash
3906 controller has been triggered.</entry>
3907 </row>
3908 <row>
3909 <entry><constant>V4L2_FLASH_FAULT_OVER_CURRENT</constant></entry>
3910 <entry>Current in the LED power supply has exceeded the limit
3911 specific to the flash controller.</entry>
3912 </row>
3913 <row>
3914 <entry><constant>V4L2_FLASH_FAULT_INDICATOR</constant></entry>
3915 <entry>The flash controller has detected a short or open
3916 circuit condition on the indicator LED.</entry>
3917 </row>
3918 </tbody>
3919 </entrytbl>
3920 </row>
3921 <row>
3922 <entry spanname="id"><constant>V4L2_CID_FLASH_CHARGE</constant></entry>
3923 <entry>boolean</entry>
3924 </row>
3925 <row><entry spanname="descr">Enable or disable charging of the xenon
3926 flash capacitor.</entry>
3927 </row>
3928 <row>
3929 <entry spanname="id"><constant>V4L2_CID_FLASH_READY</constant></entry>
3930 <entry>boolean</entry>
3931 </row>
3932 <row>
3933 <entry spanname="descr">Is the flash ready to strobe?
3934 Xenon flashes require their capacitors charged before
3935 strobing. LED flashes often require a cooldown period
3936 after strobe during which another strobe will not be
3937 possible. This is a read-only control.</entry>
3938 </row>
3939 <row><entry></entry></row>
3940 </tbody>
3941 </tgroup>
3942 </table>
3943 </section>
3722 </section> 3944 </section>
3723
3724 <table pgwide="1" frame="none" id="flash-control-id">
3725 <title>Flash Control IDs</title>
3726
3727 <tgroup cols="4">
3728 <colspec colname="c1" colwidth="1*" />
3729 <colspec colname="c2" colwidth="6*" />
3730 <colspec colname="c3" colwidth="2*" />
3731 <colspec colname="c4" colwidth="6*" />
3732 <spanspec namest="c1" nameend="c2" spanname="id" />
3733 <spanspec namest="c2" nameend="c4" spanname="descr" />
3734 <thead>
3735 <row>
3736 <entry spanname="id" align="left">ID</entry>
3737 <entry align="left">Type</entry>
3738 </row><row rowsep="1"><entry spanname="descr" align="left">Description</entry>
3739 </row>
3740 </thead>
3741 <tbody valign="top">
3742 <row><entry></entry></row>
3743 <row>
3744 <entry spanname="id"><constant>V4L2_CID_FLASH_CLASS</constant></entry>
3745 <entry>class</entry>
3746 </row>
3747 <row>
3748 <entry spanname="descr">The FLASH class descriptor.</entry>
3749 </row>
3750 <row>
3751 <entry spanname="id"><constant>V4L2_CID_FLASH_LED_MODE</constant></entry>
3752 <entry>menu</entry>
3753 </row>
3754 <row id="v4l2-flash-led-mode">
3755 <entry spanname="descr">Defines the mode of the flash LED,
3756 the high-power white LED attached to the flash controller.
3757 Setting this control may not be possible in presence of
3758 some faults. See V4L2_CID_FLASH_FAULT.</entry>
3759 </row>
3760 <row>
3761 <entrytbl spanname="descr" cols="2">
3762 <tbody valign="top">
3763 <row>
3764 <entry><constant>V4L2_FLASH_LED_MODE_NONE</constant></entry>
3765 <entry>Off.</entry>
3766 </row>
3767 <row>
3768 <entry><constant>V4L2_FLASH_LED_MODE_FLASH</constant></entry>
3769 <entry>Flash mode.</entry>
3770 </row>
3771 <row>
3772 <entry><constant>V4L2_FLASH_LED_MODE_TORCH</constant></entry>
3773 <entry>Torch mode. See V4L2_CID_FLASH_TORCH_INTENSITY.</entry>
3774 </row>
3775 </tbody>
3776 </entrytbl>
3777 </row>
3778 <row>
3779 <entry spanname="id"><constant>V4L2_CID_FLASH_STROBE_SOURCE</constant></entry>
3780 <entry>menu</entry>
3781 </row>
3782 <row id="v4l2-flash-strobe-source"><entry
3783 spanname="descr">Defines the source of the flash LED
3784 strobe.</entry>
3785 </row>
3786 <row>
3787 <entrytbl spanname="descr" cols="2">
3788 <tbody valign="top">
3789 <row>
3790 <entry><constant>V4L2_FLASH_STROBE_SOURCE_SOFTWARE</constant></entry>
3791 <entry>The flash strobe is triggered by using
3792 the V4L2_CID_FLASH_STROBE control.</entry>
3793 </row>
3794 <row>
3795 <entry><constant>V4L2_FLASH_STROBE_SOURCE_EXTERNAL</constant></entry>
3796 <entry>The flash strobe is triggered by an
3797 external source. Typically this is a sensor,
3798 which makes it possible to synchronises the
3799 flash strobe start to exposure start.</entry>
3800 </row>
3801 </tbody>
3802 </entrytbl>
3803 </row>
3804 <row>
3805 <entry spanname="id"><constant>V4L2_CID_FLASH_STROBE</constant></entry>
3806 <entry>button</entry>
3807 </row>
3808 <row>
3809 <entry spanname="descr">Strobe flash. Valid when
3810 V4L2_CID_FLASH_LED_MODE is set to
3811 V4L2_FLASH_LED_MODE_FLASH and V4L2_CID_FLASH_STROBE_SOURCE
3812 is set to V4L2_FLASH_STROBE_SOURCE_SOFTWARE. Setting this
3813 control may not be possible in presence of some faults.
3814 See V4L2_CID_FLASH_FAULT.</entry>
3815 </row>
3816 <row>
3817 <entry spanname="id"><constant>V4L2_CID_FLASH_STROBE_STOP</constant></entry>
3818 <entry>button</entry>
3819 </row>
3820 <row><entry spanname="descr">Stop flash strobe immediately.</entry>
3821 </row>
3822 <row>
3823 <entry spanname="id"><constant>V4L2_CID_FLASH_STROBE_STATUS</constant></entry>
3824 <entry>boolean</entry>
3825 </row>
3826 <row>
3827 <entry spanname="descr">Strobe status: whether the flash
3828 is strobing at the moment or not. This is a read-only
3829 control.</entry>
3830 </row>
3831 <row>
3832 <entry spanname="id"><constant>V4L2_CID_FLASH_TIMEOUT</constant></entry>
3833 <entry>integer</entry>
3834 </row>
3835 <row>
3836 <entry spanname="descr">Hardware timeout for flash. The
3837 flash strobe is stopped after this period of time has
3838 passed from the start of the strobe.</entry>
3839 </row>
3840 <row>
3841 <entry spanname="id"><constant>V4L2_CID_FLASH_INTENSITY</constant></entry>
3842 <entry>integer</entry>
3843 </row>
3844 <row>
3845 <entry spanname="descr">Intensity of the flash strobe when
3846 the flash LED is in flash mode
3847 (V4L2_FLASH_LED_MODE_FLASH). The unit should be milliamps
3848 (mA) if possible.</entry>
3849 </row>
3850 <row>
3851 <entry spanname="id"><constant>V4L2_CID_FLASH_TORCH_INTENSITY</constant></entry>
3852 <entry>integer</entry>
3853 </row>
3854 <row>
3855 <entry spanname="descr">Intensity of the flash LED in
3856 torch mode (V4L2_FLASH_LED_MODE_TORCH). The unit should be
3857 milliamps (mA) if possible. Setting this control may not
3858 be possible in presence of some faults. See
3859 V4L2_CID_FLASH_FAULT.</entry>
3860 </row>
3861 <row>
3862 <entry spanname="id"><constant>V4L2_CID_FLASH_INDICATOR_INTENSITY</constant></entry>
3863 <entry>integer</entry>
3864 </row>
3865 <row>
3866 <entry spanname="descr">Intensity of the indicator LED.
3867 The indicator LED may be fully independent of the flash
3868 LED. The unit should be microamps (uA) if possible.</entry>
3869 </row>
3870 <row>
3871 <entry spanname="id"><constant>V4L2_CID_FLASH_FAULT</constant></entry>
3872 <entry>bitmask</entry>
3873 </row>
3874 <row>
3875 <entry spanname="descr">Faults related to the flash. The
3876 faults tell about specific problems in the flash chip
3877 itself or the LEDs attached to it. Faults may prevent
3878 further use of some of the flash controls. In particular,
3879 V4L2_CID_FLASH_LED_MODE is set to V4L2_FLASH_LED_MODE_NONE
3880 if the fault affects the flash LED. Exactly which faults
3881 have such an effect is chip dependent. Reading the faults
3882 resets the control and returns the chip to a usable state
3883 if possible.</entry>
3884 </row>
3885 <row>
3886 <entrytbl spanname="descr" cols="2">
3887 <tbody valign="top">
3888 <row>
3889 <entry><constant>V4L2_FLASH_FAULT_OVER_VOLTAGE</constant></entry>
3890 <entry>Flash controller voltage to the flash LED
3891 has exceeded the limit specific to the flash
3892 controller.</entry>
3893 </row>
3894 <row>
3895 <entry><constant>V4L2_FLASH_FAULT_TIMEOUT</constant></entry>
3896 <entry>The flash strobe was still on when
3897 the timeout set by the user ---
3898 V4L2_CID_FLASH_TIMEOUT control --- has expired.
3899 Not all flash controllers may set this in all
3900 such conditions.</entry>
3901 </row>
3902 <row>
3903 <entry><constant>V4L2_FLASH_FAULT_OVER_TEMPERATURE</constant></entry>
3904 <entry>The flash controller has overheated.</entry>
3905 </row>
3906 <row>
3907 <entry><constant>V4L2_FLASH_FAULT_SHORT_CIRCUIT</constant></entry>
3908 <entry>The short circuit protection of the flash
3909 controller has been triggered.</entry>
3910 </row>
3911 <row>
3912 <entry><constant>V4L2_FLASH_FAULT_OVER_CURRENT</constant></entry>
3913 <entry>Current in the LED power supply has exceeded the limit
3914 specific to the flash controller.</entry>
3915 </row>
3916 <row>
3917 <entry><constant>V4L2_FLASH_FAULT_INDICATOR</constant></entry>
3918 <entry>The flash controller has detected a short or open
3919 circuit condition on the indicator LED.</entry>
3920 </row>
3921 </tbody>
3922 </entrytbl>
3923 </row>
3924 <row>
3925 <entry spanname="id"><constant>V4L2_CID_FLASH_CHARGE</constant></entry>
3926 <entry>boolean</entry>
3927 </row>
3928 <row><entry spanname="descr">Enable or disable charging of the xenon
3929 flash capacitor.</entry>
3930 </row>
3931 <row>
3932 <entry spanname="id"><constant>V4L2_CID_FLASH_READY</constant></entry>
3933 <entry>boolean</entry>
3934 </row>
3935 <row>
3936 <entry spanname="descr">Is the flash ready to strobe?
3937 Xenon flashes require their capacitors charged before
3938 strobing. LED flashes often require a cooldown period
3939 after strobe during which another strobe will not be
3940 possible. This is a read-only control.</entry>
3941 </row>
3942 <row><entry></entry></row>
3943 </tbody>
3944 </tgroup>
3945 </table>
3946 </section> 3945 </section>
3947 3946
3948 <section id="jpeg-controls"> 3947 <section id="jpeg-controls">
@@ -4274,4 +4273,165 @@ interface and may change in the future.</para>
4274 </table> 4273 </table>
4275 4274
4276 </section> 4275 </section>
4276
4277 <section id="dv-controls">
4278 <title>Digital Video Control Reference</title>
4279
4280 <note>
4281 <title>Experimental</title>
4282
4283 <para>This is an <link
4284 linkend="experimental">experimental</link> interface and may
4285 change in the future.</para>
4286 </note>
4287
4288 <para>
4289 The Digital Video control class is intended to control receivers
4290 and transmitters for <ulink url="http://en.wikipedia.org/wiki/Vga">VGA</ulink>,
4291 <ulink url="http://en.wikipedia.org/wiki/Digital_Visual_Interface">DVI</ulink>
4292 (Digital Visual Interface), HDMI (<xref linkend="hdmi" />) and DisplayPort (<xref linkend="dp" />).
4293 These controls are generally expected to be private to the receiver or transmitter
4294 subdevice that implements them, so they are only exposed on the
4295 <filename>/dev/v4l-subdev*</filename> device node.
4296 </para>
4297
4298 <para>Note that these devices can have multiple input or output pads which are
4299 hooked up to e.g. HDMI connectors. Even though the subdevice will receive or
4300 transmit video from/to only one of those pads, the other pads can still be
4301 active when it comes to EDID (Extended Display Identification Data,
4302 <xref linkend="vesaedid" />) and HDCP (High-bandwidth Digital Content
4303 Protection System, <xref linkend="hdcp" />) processing, allowing the device
4304 to do the fairly slow EDID/HDCP handling in advance. This allows for quick
4305 switching between connectors.</para>
4306
4307 <para>These pads appear in several of the controls in this section as
4308 bitmasks, one bit for each pad. Bit 0 corresponds to pad 0, bit 1 to pad 1,
4309 etc. The maximum value of the control is the set of valid pads.</para>
4310
4311 <table pgwide="1" frame="none" id="dv-control-id">
4312 <title>Digital Video Control IDs</title>
4313
4314 <tgroup cols="4">
4315 <colspec colname="c1" colwidth="1*" />
4316 <colspec colname="c2" colwidth="6*" />
4317 <colspec colname="c3" colwidth="2*" />
4318 <colspec colname="c4" colwidth="6*" />
4319 <spanspec namest="c1" nameend="c2" spanname="id" />
4320 <spanspec namest="c2" nameend="c4" spanname="descr" />
4321 <thead>
4322 <row>
4323 <entry spanname="id" align="left">ID</entry>
4324 <entry align="left">Type</entry>
4325 </row><row rowsep="1"><entry spanname="descr" align="left">Description</entry>
4326 </row>
4327 </thead>
4328 <tbody valign="top">
4329 <row><entry></entry></row>
4330 <row>
4331 <entry spanname="id"><constant>V4L2_CID_DV_CLASS</constant></entry>
4332 <entry>class</entry>
4333 </row>
4334 <row>
4335 <entry spanname="descr">The Digital Video class descriptor.</entry>
4336 </row>
4337 <row>
4338 <entry spanname="id"><constant>V4L2_CID_DV_TX_HOTPLUG</constant></entry>
4339 <entry>bitmask</entry>
4340 </row>
4341 <row>
4342 <entry spanname="descr">Many connectors have a hotplug pin which is high
4343 if EDID information is available from the source. This control shows the
4344 state of the hotplug pin as seen by the transmitter.
4345 Each bit corresponds to an output pad on the transmitter. If an output pad
4346 does not have an associated hotplug pin, then the bit for that pad will be 0.
4347 This read-only control is applicable to DVI-D, HDMI and DisplayPort connectors.
4348 </entry>
4349 </row>
4350 <row>
4351 <entry spanname="id"><constant>V4L2_CID_DV_TX_RXSENSE</constant></entry>
4352 <entry>bitmask</entry>
4353 </row>
4354 <row>
4355 <entry spanname="descr">Rx Sense is the detection of pull-ups on the TMDS
4356 clock lines. This normally means that the sink has left/entered standby (i.e.
4357 the transmitter can sense that the receiver is ready to receive video).
4358 Each bit corresponds to an output pad on the transmitter. If an output pad
4359 does not have an associated Rx Sense, then the bit for that pad will be 0.
4360 This read-only control is applicable to DVI-D and HDMI devices.
4361 </entry>
4362 </row>
4363 <row>
4364 <entry spanname="id"><constant>V4L2_CID_DV_TX_EDID_PRESENT</constant></entry>
4365 <entry>bitmask</entry>
4366 </row>
4367 <row>
4368 <entry spanname="descr">When the transmitter sees the hotplug signal from the
4369 receiver it will attempt to read the EDID. If set, then the transmitter has read
4370 at least the first block (= 128 bytes).
4371 Each bit corresponds to an output pad on the transmitter. If an output pad
4372 does not support EDIDs, then the bit for that pad will be 0.
4373 This read-only control is applicable to VGA, DVI-A/D, HDMI and DisplayPort connectors.
4374 </entry>
4375 </row>
4376 <row>
4377 <entry spanname="id"><constant>V4L2_CID_DV_TX_MODE</constant></entry>
4378 <entry id="v4l2-dv-tx-mode">enum v4l2_dv_tx_mode</entry>
4379 </row>
4380 <row>
4381 <entry spanname="descr">HDMI transmitters can transmit in DVI-D mode (just video)
4382 or in HDMI mode (video + audio + auxiliary data). This control selects which mode
4383 to use: V4L2_DV_TX_MODE_DVI_D or V4L2_DV_TX_MODE_HDMI.
4384 This control is applicable to HDMI connectors.
4385 </entry>
4386 </row>
4387 <row>
4388 <entry spanname="id"><constant>V4L2_CID_DV_TX_RGB_RANGE</constant></entry>
4389 <entry id="v4l2-dv-rgb-range">enum v4l2_dv_rgb_range</entry>
4390 </row>
4391 <row>
4392 <entry spanname="descr">Select the quantization range for RGB output. V4L2_DV_RANGE_AUTO
4393 follows the RGB quantization range specified in the standard for the video interface
4394 (ie. <xref linkend="cea861" /> for HDMI). V4L2_DV_RANGE_LIMITED and V4L2_DV_RANGE_FULL override the standard
4395 to be compatible with sinks that have not implemented the standard correctly
4396 (unfortunately quite common for HDMI and DVI-D). Full range allows all possible values to be
4397 used whereas limited range sets the range to (16 &lt;&lt; (N-8)) - (235 &lt;&lt; (N-8))
4398 where N is the number of bits per component.
4399 This control is applicable to VGA, DVI-A/D, HDMI and DisplayPort connectors.
4400 </entry>
4401 </row>
4402 <row>
4403 <entry spanname="id"><constant>V4L2_CID_DV_RX_POWER_PRESENT</constant></entry>
4404 <entry>bitmask</entry>
4405 </row>
4406 <row>
4407 <entry spanname="descr">Detects whether the receiver receives power from the source
4408 (e.g. HDMI carries 5V on one of the pins). This is often used to power an eeprom
4409 which contains EDID information, such that the source can read the EDID even if
4410 the sink is in standby/power off.
4411 Each bit corresponds to an input pad on the transmitter. If an input pad
4412 cannot detect whether power is present, then the bit for that pad will be 0.
4413 This read-only control is applicable to DVI-D, HDMI and DisplayPort connectors.
4414 </entry>
4415 </row>
4416 <row>
4417 <entry spanname="id"><constant>V4L2_CID_DV_RX_RGB_RANGE</constant></entry>
4418 <entry>enum v4l2_dv_rgb_range</entry>
4419 </row>
4420 <row>
4421 <entry spanname="descr">Select the quantization range for RGB input. V4L2_DV_RANGE_AUTO
4422 follows the RGB quantization range specified in the standard for the video interface
4423 (ie. <xref linkend="cea861" /> for HDMI). V4L2_DV_RANGE_LIMITED and V4L2_DV_RANGE_FULL override the standard
4424 to be compatible with sources that have not implemented the standard correctly
4425 (unfortunately quite common for HDMI and DVI-D). Full range allows all possible values to be
4426 used whereas limited range sets the range to (16 &lt;&lt; (N-8)) - (235 &lt;&lt; (N-8))
4427 where N is the number of bits per component.
4428 This control is applicable to VGA, DVI-A/D, HDMI and DisplayPort connectors.
4429 </entry>
4430 </row>
4431 <row><entry></entry></row>
4432 </tbody>
4433 </tgroup>
4434 </table>
4435
4436 </section>
4277</section> 4437</section>