aboutsummaryrefslogtreecommitdiffstats
path: root/Documentation/DocBook
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2013-02-24 20:35:10 -0500
committerLinus Torvalds <torvalds@linux-foundation.org>2013-02-24 20:35:10 -0500
commit21fbd5809ad126b949206d78e0a0e07ec872ea11 (patch)
treea824045df99fc1f0690095a925cceb50207e332b /Documentation/DocBook
parentd9978ec5680059d727b39d6c706777c6973587f2 (diff)
parented72d37a33fdf43dc47787fe220532cdec9da528 (diff)
Merge branch 'v4l_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media
Pull media updates from Mauro Carvalho Chehab: - Some cleanups at V4L2 documentation - new drivers: ts2020 frontend, ov9650 sensor, s5c73m3 sensor, sh-mobile veu mem2mem driver, radio-ma901, davinci_vpfe staging driver - Lots of missing MAINTAINERS entries added - several em28xx driver improvements, including its conversion to videobuf2 - several fixups on drivers to make them to better comply with the API - DVB core: add support for DVBv5 stats, allowing the implementation of statistics for new standards like ISDB - mb86a20s: add statistics to the driver - lots of new board additions, cleanups, and driver improvements. * 'v4l_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media: (596 commits) [media] media: Add 0x3009 USB PID to ttusb2 driver (fixed diff) [media] rtl28xxu: Add USB IDs for Compro VideoMate U620F [media] em28xx: add usb id for terratec h5 rev. 3 [media] media: rc: gpio-ir-recv: add support for device tree parsing [media] mceusb: move check earlier to make smatch happy [media] radio-si470x doc: add info about v4l2-ctl and sox+alsa [media] staging: media: Remove unnecessary OOM messages [media] sh_vou: Use vou_dev instead of vou_file wherever possible [media] sh_vou: Use video_drvdata() [media] drivers/media/platform/soc_camera/pxa_camera.c: use devm_ functions [media] mt9t112: mt9t111 format set up differs from mt9t112 [media] sh-mobile-ceu-camera: fix SHARPNESS control default Revert "[media] fc0011: Return early, if the frequency is already tuned" [media] cx18/ivtv: fix regression: remove __init from a non-init function [media] em28xx: fix analog streaming with USB bulk transfers [media] stv0900: remove unnecessary null pointer check [media] fc0011: Return early, if the frequency is already tuned [media] fc0011: Add some sanity checks and cleanups [media] fc0011: Fix xin value clamping Revert "[media] [PATH,1/2] mxl5007 move reset to attach" ...
Diffstat (limited to 'Documentation/DocBook')
-rw-r--r--Documentation/DocBook/media/dvb/dvbapi.xml2
-rw-r--r--Documentation/DocBook/media/dvb/dvbproperty.xml180
-rw-r--r--Documentation/DocBook/media/dvb/frontend.xml2
-rw-r--r--Documentation/DocBook/media/v4l/common.xml2
-rw-r--r--Documentation/DocBook/media/v4l/compat.xml16
-rw-r--r--Documentation/DocBook/media/v4l/controls.xml23
-rw-r--r--Documentation/DocBook/media/v4l/io.xml59
-rw-r--r--Documentation/DocBook/media/v4l/pixfmt-nv12m.xml2
-rw-r--r--Documentation/DocBook/media/v4l/pixfmt-srggb10alaw8.xml34
-rw-r--r--Documentation/DocBook/media/v4l/pixfmt-uv8.xml62
-rw-r--r--Documentation/DocBook/media/v4l/pixfmt.xml2
-rw-r--r--Documentation/DocBook/media/v4l/subdev-formats.xml926
-rw-r--r--Documentation/DocBook/media/v4l/v4l2.xml12
-rw-r--r--Documentation/DocBook/media/v4l/vidioc-dqevent.xml6
-rw-r--r--Documentation/DocBook/media/v4l/vidioc-expbuf.xml28
-rw-r--r--Documentation/DocBook/media/v4l/vidioc-g-ctrl.xml8
-rw-r--r--Documentation/DocBook/media/v4l/vidioc-g-ext-ctrls.xml57
-rw-r--r--Documentation/DocBook/media/v4l/vidioc-querycap.xml2
-rw-r--r--Documentation/DocBook/media_api.tmpl1
19 files changed, 842 insertions, 582 deletions
diff --git a/Documentation/DocBook/media/dvb/dvbapi.xml b/Documentation/DocBook/media/dvb/dvbapi.xml
index 757488b24f4f..0197bcc7842d 100644
--- a/Documentation/DocBook/media/dvb/dvbapi.xml
+++ b/Documentation/DocBook/media/dvb/dvbapi.xml
@@ -84,7 +84,7 @@ Added ISDB-T test originally written by Patrick Boettcher
84 84
85 85
86<title>LINUX DVB API</title> 86<title>LINUX DVB API</title>
87<subtitle>Version 5.8</subtitle> 87<subtitle>Version 5.10</subtitle>
88<!-- ADD THE CHAPTERS HERE --> 88<!-- ADD THE CHAPTERS HERE -->
89 <chapter id="dvb_introdution"> 89 <chapter id="dvb_introdution">
90 &sub-intro; 90 &sub-intro;
diff --git a/Documentation/DocBook/media/dvb/dvbproperty.xml b/Documentation/DocBook/media/dvb/dvbproperty.xml
index 957e3acaae8e..4a5eaeed0b9e 100644
--- a/Documentation/DocBook/media/dvb/dvbproperty.xml
+++ b/Documentation/DocBook/media/dvb/dvbproperty.xml
@@ -7,14 +7,41 @@ the capability ioctls weren't implemented yet via the new way.</para>
7<para>The typical usage for the <constant>FE_GET_PROPERTY/FE_SET_PROPERTY</constant> 7<para>The typical usage for the <constant>FE_GET_PROPERTY/FE_SET_PROPERTY</constant>
8API is to replace the ioctl's were the <link linkend="dvb-frontend-parameters"> 8API is to replace the ioctl's were the <link linkend="dvb-frontend-parameters">
9struct <constant>dvb_frontend_parameters</constant></link> were used.</para> 9struct <constant>dvb_frontend_parameters</constant></link> were used.</para>
10<section id="dtv-stats">
11<title>DTV stats type</title>
12<programlisting>
13struct dtv_stats {
14 __u8 scale; /* enum fecap_scale_params type */
15 union {
16 __u64 uvalue; /* for counters and relative scales */
17 __s64 svalue; /* for 1/1000 dB measures */
18 };
19} __packed;
20</programlisting>
21</section>
22<section id="dtv-fe-stats">
23<title>DTV stats type</title>
24<programlisting>
25#define MAX_DTV_STATS 4
26
27struct dtv_fe_stats {
28 __u8 len;
29 struct dtv_stats stat[MAX_DTV_STATS];
30} __packed;
31</programlisting>
32</section>
33
10<section id="dtv-property"> 34<section id="dtv-property">
11<title>DTV property type</title> 35<title>DTV property type</title>
12<programlisting> 36<programlisting>
13/* Reserved fields should be set to 0 */ 37/* Reserved fields should be set to 0 */
38
14struct dtv_property { 39struct dtv_property {
15 __u32 cmd; 40 __u32 cmd;
41 __u32 reserved[3];
16 union { 42 union {
17 __u32 data; 43 __u32 data;
44 struct dtv_fe_stats st;
18 struct { 45 struct {
19 __u8 data[32]; 46 __u8 data[32];
20 __u32 len; 47 __u32 len;
@@ -440,7 +467,7 @@ typedef enum fe_delivery_system {
440 <title><constant>DTV-ISDBT-LAYER*</constant> parameters</title> 467 <title><constant>DTV-ISDBT-LAYER*</constant> parameters</title>
441 <para>ISDB-T channels can be coded hierarchically. As opposed to DVB-T in 468 <para>ISDB-T channels can be coded hierarchically. As opposed to DVB-T in
442 ISDB-T hierarchical layers can be decoded simultaneously. For that 469 ISDB-T hierarchical layers can be decoded simultaneously. For that
443 reason a ISDB-T demodulator has 3 viterbi and 3 reed-solomon-decoders.</para> 470 reason a ISDB-T demodulator has 3 Viterbi and 3 Reed-Solomon decoders.</para>
444 <para>ISDB-T has 3 hierarchical layers which each can use a part of the 471 <para>ISDB-T has 3 hierarchical layers which each can use a part of the
445 available segments. The total number of segments over all layers has 472 available segments. The total number of segments over all layers has
446 to 13 in ISDB-T.</para> 473 to 13 in ISDB-T.</para>
@@ -850,6 +877,147 @@ enum fe_interleaving {
850 <para>use the special macro LNA_AUTO to set LNA auto</para> 877 <para>use the special macro LNA_AUTO to set LNA auto</para>
851 </section> 878 </section>
852</section> 879</section>
880
881 <section id="frontend-stat-properties">
882 <title>Frontend statistics indicators</title>
883 <para>The values are returned via <constant>dtv_property.stat</constant>.
884 If the property is supported, <constant>dtv_property.stat.len</constant> is bigger than zero.</para>
885 <para>For most delivery systems, <constant>dtv_property.stat.len</constant>
886 will be 1 if the stats is supported, and the properties will
887 return a single value for each parameter.</para>
888 <para>It should be noticed, however, that new OFDM delivery systems
889 like ISDB can use different modulation types for each group of
890 carriers. On such standards, up to 3 groups of statistics can be
891 provided, and <constant>dtv_property.stat.len</constant> is updated
892 to reflect the "global" metrics, plus one metric per each carrier
893 group (called "layer" on ISDB).</para>
894 <para>So, in order to be consistent with other delivery systems, the first
895 value at <link linkend="dtv-stats"><constant>dtv_property.stat.dtv_stats</constant></link>
896 array refers to the global metric. The other elements of the array
897 represent each layer, starting from layer A(index 1),
898 layer B (index 2) and so on.</para>
899 <para>The number of filled elements are stored at <constant>dtv_property.stat.len</constant>.</para>
900 <para>Each element of the <constant>dtv_property.stat.dtv_stats</constant> array consists on two elements:</para>
901 <itemizedlist mark='opencircle'>
902 <listitem><para><constant>svalue</constant> or <constant>uvalue</constant>, where
903 <constant>svalue</constant> is for signed values of the measure (dB measures)
904 and <constant>uvalue</constant> is for unsigned values (counters, relative scale)</para></listitem>
905 <listitem><para><constant>scale</constant> - Scale for the value. It can be:</para>
906 <section id = "fecap-scale-params">
907 <itemizedlist mark='bullet'>
908 <listitem><para><constant>FE_SCALE_NOT_AVAILABLE</constant> - The parameter is supported by the frontend, but it was not possible to collect it (could be a transitory or permanent condition)</para></listitem>
909 <listitem><para><constant>FE_SCALE_DECIBEL</constant> - parameter is a signed value, measured in 1/1000 dB</para></listitem>
910 <listitem><para><constant>FE_SCALE_RELATIVE</constant> - parameter is a unsigned value, where 0 means 0% and 65535 means 100%.</para></listitem>
911 <listitem><para><constant>FE_SCALE_COUNTER</constant> - parameter is a unsigned value that counts the occurrence of an event, like bit error, block error, or lapsed time.</para></listitem>
912 </itemizedlist>
913 </section>
914 </listitem>
915 </itemizedlist>
916 <section id="DTV-STAT-SIGNAL-STRENGTH">
917 <title><constant>DTV_STAT_SIGNAL_STRENGTH</constant></title>
918 <para>Indicates the signal strength level at the analog part of the tuner or of the demod.</para>
919 <para>Possible scales for this metric are:</para>
920 <itemizedlist mark='bullet'>
921 <listitem><constant>FE_SCALE_NOT_AVAILABLE</constant> - it failed to measure it, or the measurement was not complete yet.</listitem>
922 <listitem><constant>FE_SCALE_DECIBEL</constant> - signal strength is in 0.0001 dBm units, power measured in miliwatts. This value is generally negative.</listitem>
923 <listitem><constant>FE_SCALE_RELATIVE</constant> - The frontend provides a 0% to 100% measurement for power (actually, 0 to 65535).</listitem>
924 </itemizedlist>
925 </section>
926 <section id="DTV-STAT-CNR">
927 <title><constant>DTV_STAT_CNR</constant></title>
928 <para>Indicates the Signal to Noise ratio for the main carrier.</para>
929 <para>Possible scales for this metric are:</para>
930 <itemizedlist mark='bullet'>
931 <listitem><constant>FE_SCALE_NOT_AVAILABLE</constant> - it failed to measure it, or the measurement was not complete yet.</listitem>
932 <listitem><constant>FE_SCALE_DECIBEL</constant> - Signal/Noise ratio is in 0.0001 dB units.</listitem>
933 <listitem><constant>FE_SCALE_RELATIVE</constant> - The frontend provides a 0% to 100% measurement for Signal/Noise (actually, 0 to 65535).</listitem>
934 </itemizedlist>
935 </section>
936 <section id="DTV-STAT-PRE-ERROR-BIT-COUNT">
937 <title><constant>DTV_STAT_PRE_ERROR_BIT_COUNT</constant></title>
938 <para>Measures the number of bit errors before the forward error correction (FEC) on the inner coding block (before Viterbi, LDPC or other inner code).</para>
939 <para>This measure is taken during the same interval as <constant>DTV_STAT_PRE_TOTAL_BIT_COUNT</constant>.</para>
940 <para>In order to get the BER (Bit Error Rate) measurement, it should be divided by
941 <link linkend="DTV-STAT-PRE-TOTAL-BIT-COUNT"><constant>DTV_STAT_PRE_TOTAL_BIT_COUNT</constant></link>.</para>
942 <para>This measurement is monotonically increased, as the frontend gets more bit count measurements.
943 The frontend may reset it when a channel/transponder is tuned.</para>
944 <para>Possible scales for this metric are:</para>
945 <itemizedlist mark='bullet'>
946 <listitem><constant>FE_SCALE_NOT_AVAILABLE</constant> - it failed to measure it, or the measurement was not complete yet.</listitem>
947 <listitem><constant>FE_SCALE_COUNTER</constant> - Number of error bits counted before the inner coding.</listitem>
948 </itemizedlist>
949 </section>
950 <section id="DTV-STAT-PRE-TOTAL-BIT-COUNT">
951 <title><constant>DTV_STAT_PRE_TOTAL_BIT_COUNT</constant></title>
952 <para>Measures the amount of bits received before the inner code block, during the same period as
953 <link linkend="DTV-STAT-PRE-ERROR-BIT-COUNT"><constant>DTV_STAT_PRE_ERROR_BIT_COUNT</constant></link> measurement was taken.</para>
954 <para>It should be noticed that this measurement can be smaller than the total amount of bits on the transport stream,
955 as the frontend may need to manually restart the measurement, loosing some data between each measurement interval.</para>
956 <para>This measurement is monotonically increased, as the frontend gets more bit count measurements.
957 The frontend may reset it when a channel/transponder is tuned.</para>
958 <para>Possible scales for this metric are:</para>
959 <itemizedlist mark='bullet'>
960 <listitem><constant>FE_SCALE_NOT_AVAILABLE</constant> - it failed to measure it, or the measurement was not complete yet.</listitem>
961 <listitem><constant>FE_SCALE_COUNTER</constant> - Number of bits counted while measuring
962 <link linkend="DTV-STAT-PRE-ERROR-BIT-COUNT"><constant>DTV_STAT_PRE_ERROR_BIT_COUNT</constant></link>.</listitem>
963 </itemizedlist>
964 </section>
965 <section id="DTV-STAT-POST-ERROR-BIT-COUNT">
966 <title><constant>DTV_STAT_POST_ERROR_BIT_COUNT</constant></title>
967 <para>Measures the number of bit errors after the forward error correction (FEC) done by inner code block (after Viterbi, LDPC or other inner code).</para>
968 <para>This measure is taken during the same interval as <constant>DTV_STAT_POST_TOTAL_BIT_COUNT</constant>.</para>
969 <para>In order to get the BER (Bit Error Rate) measurement, it should be divided by
970 <link linkend="DTV-STAT-POST-TOTAL-BIT-COUNT"><constant>DTV_STAT_POST_TOTAL_BIT_COUNT</constant></link>.</para>
971 <para>This measurement is monotonically increased, as the frontend gets more bit count measurements.
972 The frontend may reset it when a channel/transponder is tuned.</para>
973 <para>Possible scales for this metric are:</para>
974 <itemizedlist mark='bullet'>
975 <listitem><constant>FE_SCALE_NOT_AVAILABLE</constant> - it failed to measure it, or the measurement was not complete yet.</listitem>
976 <listitem><constant>FE_SCALE_COUNTER</constant> - Number of error bits counted after the inner coding.</listitem>
977 </itemizedlist>
978 </section>
979 <section id="DTV-STAT-POST-TOTAL-BIT-COUNT">
980 <title><constant>DTV_STAT_POST_TOTAL_BIT_COUNT</constant></title>
981 <para>Measures the amount of bits received after the inner coding, during the same period as
982 <link linkend="DTV-STAT-POST-ERROR-BIT-COUNT"><constant>DTV_STAT_POST_ERROR_BIT_COUNT</constant></link> measurement was taken.</para>
983 <para>It should be noticed that this measurement can be smaller than the total amount of bits on the transport stream,
984 as the frontend may need to manually restart the measurement, loosing some data between each measurement interval.</para>
985 <para>This measurement is monotonically increased, as the frontend gets more bit count measurements.
986 The frontend may reset it when a channel/transponder is tuned.</para>
987 <para>Possible scales for this metric are:</para>
988 <itemizedlist mark='bullet'>
989 <listitem><constant>FE_SCALE_NOT_AVAILABLE</constant> - it failed to measure it, or the measurement was not complete yet.</listitem>
990 <listitem><constant>FE_SCALE_COUNTER</constant> - Number of bits counted while measuring
991 <link linkend="DTV-STAT-POST-ERROR-BIT-COUNT"><constant>DTV_STAT_POST_ERROR_BIT_COUNT</constant></link>.</listitem>
992 </itemizedlist>
993 </section>
994 <section id="DTV-STAT-ERROR-BLOCK-COUNT">
995 <title><constant>DTV_STAT_ERROR_BLOCK_COUNT</constant></title>
996 <para>Measures the number of block errors after the outer forward error correction coding (after Reed-Solomon or other outer code).</para>
997 <para>This measurement is monotonically increased, as the frontend gets more bit count measurements.
998 The frontend may reset it when a channel/transponder is tuned.</para>
999 <para>Possible scales for this metric are:</para>
1000 <itemizedlist mark='bullet'>
1001 <listitem><constant>FE_SCALE_NOT_AVAILABLE</constant> - it failed to measure it, or the measurement was not complete yet.</listitem>
1002 <listitem><constant>FE_SCALE_COUNTER</constant> - Number of error blocks counted after the outer coding.</listitem>
1003 </itemizedlist>
1004 </section>
1005 <section id="DTV-STAT-TOTAL-BLOCK-COUNT">
1006 <title><constant>DTV-STAT_TOTAL_BLOCK_COUNT</constant></title>
1007 <para>Measures the total number of blocks received during the same period as
1008 <link linkend="DTV-STAT-ERROR-BLOCK-COUNT"><constant>DTV_STAT_ERROR_BLOCK_COUNT</constant></link> measurement was taken.</para>
1009 <para>It can be used to calculate the PER indicator, by dividing
1010 <link linkend="DTV-STAT-ERROR-BLOCK-COUNT"><constant>DTV_STAT_ERROR_BLOCK_COUNT</constant></link>
1011 by <link linkend="DTV-STAT-TOTAL-BLOCK-COUNT"><constant>DTV-STAT-TOTAL-BLOCK-COUNT</constant></link>.</para>
1012 <para>Possible scales for this metric are:</para>
1013 <itemizedlist mark='bullet'>
1014 <listitem><constant>FE_SCALE_NOT_AVAILABLE</constant> - it failed to measure it, or the measurement was not complete yet.</listitem>
1015 <listitem><constant>FE_SCALE_COUNTER</constant> - Number of blocks counted while measuring
1016 <link linkend="DTV-STAT-ERROR-BLOCK-COUNT"><constant>DTV_STAT_ERROR_BLOCK_COUNT</constant></link>.</listitem>
1017 </itemizedlist>
1018 </section>
1019 </section>
1020
853 <section id="frontend-property-terrestrial-systems"> 1021 <section id="frontend-property-terrestrial-systems">
854 <title>Properties used on terrestrial delivery systems</title> 1022 <title>Properties used on terrestrial delivery systems</title>
855 <section id="dvbt-params"> 1023 <section id="dvbt-params">
@@ -871,6 +1039,7 @@ enum fe_interleaving {
871 <listitem><para><link linkend="DTV-HIERARCHY"><constant>DTV_HIERARCHY</constant></link></para></listitem> 1039 <listitem><para><link linkend="DTV-HIERARCHY"><constant>DTV_HIERARCHY</constant></link></para></listitem>
872 <listitem><para><link linkend="DTV-LNA"><constant>DTV_LNA</constant></link></para></listitem> 1040 <listitem><para><link linkend="DTV-LNA"><constant>DTV_LNA</constant></link></para></listitem>
873 </itemizedlist> 1041 </itemizedlist>
1042 <para>In addition, the <link linkend="frontend-stat-properties">DTV QoS statistics</link> are also valid.</para>
874 </section> 1043 </section>
875 <section id="dvbt2-params"> 1044 <section id="dvbt2-params">
876 <title>DVB-T2 delivery system</title> 1045 <title>DVB-T2 delivery system</title>
@@ -895,6 +1064,7 @@ enum fe_interleaving {
895 <listitem><para><link linkend="DTV-STREAM-ID"><constant>DTV_STREAM_ID</constant></link></para></listitem> 1064 <listitem><para><link linkend="DTV-STREAM-ID"><constant>DTV_STREAM_ID</constant></link></para></listitem>
896 <listitem><para><link linkend="DTV-LNA"><constant>DTV_LNA</constant></link></para></listitem> 1065 <listitem><para><link linkend="DTV-LNA"><constant>DTV_LNA</constant></link></para></listitem>
897 </itemizedlist> 1066 </itemizedlist>
1067 <para>In addition, the <link linkend="frontend-stat-properties">DTV QoS statistics</link> are also valid.</para>
898 </section> 1068 </section>
899 <section id="isdbt"> 1069 <section id="isdbt">
900 <title>ISDB-T delivery system</title> 1070 <title>ISDB-T delivery system</title>
@@ -948,6 +1118,7 @@ enum fe_interleaving {
948 <listitem><para><link linkend="DTV-ISDBT-LAYER-SEGMENT-COUNT"><constant>DTV_ISDBT_LAYERC_SEGMENT_COUNT</constant></link></para></listitem> 1118 <listitem><para><link linkend="DTV-ISDBT-LAYER-SEGMENT-COUNT"><constant>DTV_ISDBT_LAYERC_SEGMENT_COUNT</constant></link></para></listitem>
949 <listitem><para><link linkend="DTV-ISDBT-LAYER-TIME-INTERLEAVING"><constant>DTV_ISDBT_LAYERC_TIME_INTERLEAVING</constant></link></para></listitem> 1119 <listitem><para><link linkend="DTV-ISDBT-LAYER-TIME-INTERLEAVING"><constant>DTV_ISDBT_LAYERC_TIME_INTERLEAVING</constant></link></para></listitem>
950 </itemizedlist> 1120 </itemizedlist>
1121 <para>In addition, the <link linkend="frontend-stat-properties">DTV QoS statistics</link> are also valid.</para>
951 </section> 1122 </section>
952 <section id="atsc-params"> 1123 <section id="atsc-params">
953 <title>ATSC delivery system</title> 1124 <title>ATSC delivery system</title>
@@ -961,6 +1132,7 @@ enum fe_interleaving {
961 <listitem><para><link linkend="DTV-MODULATION"><constant>DTV_MODULATION</constant></link></para></listitem> 1132 <listitem><para><link linkend="DTV-MODULATION"><constant>DTV_MODULATION</constant></link></para></listitem>
962 <listitem><para><link linkend="DTV-BANDWIDTH-HZ"><constant>DTV_BANDWIDTH_HZ</constant></link></para></listitem> 1133 <listitem><para><link linkend="DTV-BANDWIDTH-HZ"><constant>DTV_BANDWIDTH_HZ</constant></link></para></listitem>
963 </itemizedlist> 1134 </itemizedlist>
1135 <para>In addition, the <link linkend="frontend-stat-properties">DTV QoS statistics</link> are also valid.</para>
964 </section> 1136 </section>
965 <section id="atscmh-params"> 1137 <section id="atscmh-params">
966 <title>ATSC-MH delivery system</title> 1138 <title>ATSC-MH delivery system</title>
@@ -988,6 +1160,7 @@ enum fe_interleaving {
988 <listitem><para><link linkend="DTV-ATSCMH-SCCC-CODE-MODE-C"><constant>DTV_ATSCMH_SCCC_CODE_MODE_C</constant></link></para></listitem> 1160 <listitem><para><link linkend="DTV-ATSCMH-SCCC-CODE-MODE-C"><constant>DTV_ATSCMH_SCCC_CODE_MODE_C</constant></link></para></listitem>
989 <listitem><para><link linkend="DTV-ATSCMH-SCCC-CODE-MODE-D"><constant>DTV_ATSCMH_SCCC_CODE_MODE_D</constant></link></para></listitem> 1161 <listitem><para><link linkend="DTV-ATSCMH-SCCC-CODE-MODE-D"><constant>DTV_ATSCMH_SCCC_CODE_MODE_D</constant></link></para></listitem>
990 </itemizedlist> 1162 </itemizedlist>
1163 <para>In addition, the <link linkend="frontend-stat-properties">DTV QoS statistics</link> are also valid.</para>
991 </section> 1164 </section>
992 <section id="dtmb-params"> 1165 <section id="dtmb-params">
993 <title>DTMB delivery system</title> 1166 <title>DTMB delivery system</title>
@@ -1007,6 +1180,7 @@ enum fe_interleaving {
1007 <listitem><para><link linkend="DTV-INTERLEAVING"><constant>DTV_INTERLEAVING</constant></link></para></listitem> 1180 <listitem><para><link linkend="DTV-INTERLEAVING"><constant>DTV_INTERLEAVING</constant></link></para></listitem>
1008 <listitem><para><link linkend="DTV-LNA"><constant>DTV_LNA</constant></link></para></listitem> 1181 <listitem><para><link linkend="DTV-LNA"><constant>DTV_LNA</constant></link></para></listitem>
1009 </itemizedlist> 1182 </itemizedlist>
1183 <para>In addition, the <link linkend="frontend-stat-properties">DTV QoS statistics</link> are also valid.</para>
1010 </section> 1184 </section>
1011 </section> 1185 </section>
1012 <section id="frontend-property-cable-systems"> 1186 <section id="frontend-property-cable-systems">
@@ -1028,6 +1202,7 @@ enum fe_interleaving {
1028 <listitem><para><link linkend="DTV-INNER-FEC"><constant>DTV_INNER_FEC</constant></link></para></listitem> 1202 <listitem><para><link linkend="DTV-INNER-FEC"><constant>DTV_INNER_FEC</constant></link></para></listitem>
1029 <listitem><para><link linkend="DTV-LNA"><constant>DTV_LNA</constant></link></para></listitem> 1203 <listitem><para><link linkend="DTV-LNA"><constant>DTV_LNA</constant></link></para></listitem>
1030 </itemizedlist> 1204 </itemizedlist>
1205 <para>In addition, the <link linkend="frontend-stat-properties">DTV QoS statistics</link> are also valid.</para>
1031 </section> 1206 </section>
1032 <section id="dvbc-annex-b-params"> 1207 <section id="dvbc-annex-b-params">
1033 <title>DVB-C Annex B delivery system</title> 1208 <title>DVB-C Annex B delivery system</title>
@@ -1043,6 +1218,7 @@ enum fe_interleaving {
1043 <listitem><para><link linkend="DTV-INVERSION"><constant>DTV_INVERSION</constant></link></para></listitem> 1218 <listitem><para><link linkend="DTV-INVERSION"><constant>DTV_INVERSION</constant></link></para></listitem>
1044 <listitem><para><link linkend="DTV-LNA"><constant>DTV_LNA</constant></link></para></listitem> 1219 <listitem><para><link linkend="DTV-LNA"><constant>DTV_LNA</constant></link></para></listitem>
1045 </itemizedlist> 1220 </itemizedlist>
1221 <para>In addition, the <link linkend="frontend-stat-properties">DTV QoS statistics</link> are also valid.</para>
1046 </section> 1222 </section>
1047 </section> 1223 </section>
1048 <section id="frontend-property-satellital-systems"> 1224 <section id="frontend-property-satellital-systems">
@@ -1062,6 +1238,7 @@ enum fe_interleaving {
1062 <listitem><para><link linkend="DTV-VOLTAGE"><constant>DTV_VOLTAGE</constant></link></para></listitem> 1238 <listitem><para><link linkend="DTV-VOLTAGE"><constant>DTV_VOLTAGE</constant></link></para></listitem>
1063 <listitem><para><link linkend="DTV-TONE"><constant>DTV_TONE</constant></link></para></listitem> 1239 <listitem><para><link linkend="DTV-TONE"><constant>DTV_TONE</constant></link></para></listitem>
1064 </itemizedlist> 1240 </itemizedlist>
1241 <para>In addition, the <link linkend="frontend-stat-properties">DTV QoS statistics</link> are also valid.</para>
1065 <para>Future implementations might add those two missing parameters:</para> 1242 <para>Future implementations might add those two missing parameters:</para>
1066 <itemizedlist mark='opencircle'> 1243 <itemizedlist mark='opencircle'>
1067 <listitem><para><link linkend="DTV-DISEQC-MASTER"><constant>DTV_DISEQC_MASTER</constant></link></para></listitem> 1244 <listitem><para><link linkend="DTV-DISEQC-MASTER"><constant>DTV_DISEQC_MASTER</constant></link></para></listitem>
@@ -1077,6 +1254,7 @@ enum fe_interleaving {
1077 <listitem><para><link linkend="DTV-ROLLOFF"><constant>DTV_ROLLOFF</constant></link></para></listitem> 1254 <listitem><para><link linkend="DTV-ROLLOFF"><constant>DTV_ROLLOFF</constant></link></para></listitem>
1078 <listitem><para><link linkend="DTV-STREAM-ID"><constant>DTV_STREAM_ID</constant></link></para></listitem> 1255 <listitem><para><link linkend="DTV-STREAM-ID"><constant>DTV_STREAM_ID</constant></link></para></listitem>
1079 </itemizedlist> 1256 </itemizedlist>
1257 <para>In addition, the <link linkend="frontend-stat-properties">DTV QoS statistics</link> are also valid.</para>
1080 </section> 1258 </section>
1081 <section id="turbo-params"> 1259 <section id="turbo-params">
1082 <title>Turbo code delivery system</title> 1260 <title>Turbo code delivery system</title>
diff --git a/Documentation/DocBook/media/dvb/frontend.xml b/Documentation/DocBook/media/dvb/frontend.xml
index 426c2526a454..df39ba395df0 100644
--- a/Documentation/DocBook/media/dvb/frontend.xml
+++ b/Documentation/DocBook/media/dvb/frontend.xml
@@ -230,7 +230,7 @@ typedef enum fe_status {
230<entry align="char">The frontend has found a DVB signal</entry> 230<entry align="char">The frontend has found a DVB signal</entry>
231</row><row> 231</row><row>
232<entry align="char">FE_HAS_VITERBI</entry> 232<entry align="char">FE_HAS_VITERBI</entry>
233<entry align="char">The frontend FEC code is stable</entry> 233<entry align="char">The frontend FEC inner coding (Viterbi, LDPC or other inner code) is stable</entry>
234</row><row> 234</row><row>
235<entry align="char">FE_HAS_SYNC</entry> 235<entry align="char">FE_HAS_SYNC</entry>
236<entry align="char">Syncronization bytes was found</entry> 236<entry align="char">Syncronization bytes was found</entry>
diff --git a/Documentation/DocBook/media/v4l/common.xml b/Documentation/DocBook/media/v4l/common.xml
index 73c6847436c9..ae06afbbb3a9 100644
--- a/Documentation/DocBook/media/v4l/common.xml
+++ b/Documentation/DocBook/media/v4l/common.xml
@@ -609,7 +609,7 @@ to zero and the <constant>VIDIOC_G_STD</constant>,
609 <para>Applications can make use of the <xref linkend="input-capabilities" /> and 609 <para>Applications can make use of the <xref linkend="input-capabilities" /> and
610<xref linkend="output-capabilities"/> flags to determine whether the video standard ioctls 610<xref linkend="output-capabilities"/> flags to determine whether the video standard ioctls
611are available for the device.</para> 611are available for the device.</para>
612&ENOTTY;. 612
613 <para>See <xref linkend="buffer" /> for a rationale. Probably 613 <para>See <xref linkend="buffer" /> for a rationale. Probably
614even USB cameras follow some well known video standard. It might have 614even USB cameras follow some well known video standard. It might have
615been better to explicitly indicate elsewhere if a device cannot live 615been better to explicitly indicate elsewhere if a device cannot live
diff --git a/Documentation/DocBook/media/v4l/compat.xml b/Documentation/DocBook/media/v4l/compat.xml
index 3dd9e78815d1..104a1a2b8849 100644
--- a/Documentation/DocBook/media/v4l/compat.xml
+++ b/Documentation/DocBook/media/v4l/compat.xml
@@ -2477,6 +2477,22 @@ that used it. It was originally scheduled for removal in 2.6.35.
2477 </orderedlist> 2477 </orderedlist>
2478 </section> 2478 </section>
2479 2479
2480 <section>
2481 <title>V4L2 in Linux 3.9</title>
2482 <orderedlist>
2483 <listitem>
2484 <para>Added timestamp types to
2485 <structfield>flags</structfield> field in
2486 <structname>v4l2_buffer</structname>. See <xref
2487 linkend="buffer-flags" />.</para>
2488 </listitem>
2489 <listitem>
2490 <para>Added <constant>V4L2_EVENT_CTRL_CH_RANGE</constant> control event
2491 changes flag. See <xref linkend="changes-flags"/>.</para>
2492 </listitem>
2493 </orderedlist>
2494 </section>
2495
2480 <section id="other"> 2496 <section id="other">
2481 <title>Relation of V4L2 to other Linux multimedia APIs</title> 2497 <title>Relation of V4L2 to other Linux multimedia APIs</title>
2482 2498
diff --git a/Documentation/DocBook/media/v4l/controls.xml b/Documentation/DocBook/media/v4l/controls.xml
index 7fe5be1d3bbb..9e8f85498678 100644
--- a/Documentation/DocBook/media/v4l/controls.xml
+++ b/Documentation/DocBook/media/v4l/controls.xml
@@ -203,29 +203,6 @@ and should not be used in new drivers and applications.</entry>
203 <entry>boolean</entry> 203 <entry>boolean</entry>
204 <entry>Mirror the picture vertically.</entry> 204 <entry>Mirror the picture vertically.</entry>
205 </row> 205 </row>
206 <row>
207 <entry><constant>V4L2_CID_HCENTER_DEPRECATED</constant> (formerly <constant>V4L2_CID_HCENTER</constant>)</entry>
208 <entry>integer</entry>
209 <entry>Horizontal image centering. This control is
210deprecated. New drivers and applications should use the <link
211linkend="camera-controls">Camera class controls</link>
212<constant>V4L2_CID_PAN_ABSOLUTE</constant>,
213<constant>V4L2_CID_PAN_RELATIVE</constant> and
214<constant>V4L2_CID_PAN_RESET</constant> instead.</entry>
215 </row>
216 <row>
217 <entry><constant>V4L2_CID_VCENTER_DEPRECATED</constant>
218 (formerly <constant>V4L2_CID_VCENTER</constant>)</entry>
219 <entry>integer</entry>
220 <entry>Vertical image centering. Centering is intended to
221<emphasis>physically</emphasis> adjust cameras. For image cropping see
222<xref linkend="crop" />, for clipping <xref linkend="overlay" />. This
223control is deprecated. New drivers and applications should use the
224<link linkend="camera-controls">Camera class controls</link>
225<constant>V4L2_CID_TILT_ABSOLUTE</constant>,
226<constant>V4L2_CID_TILT_RELATIVE</constant> and
227<constant>V4L2_CID_TILT_RESET</constant> instead.</entry>
228 </row>
229 <row id="v4l2-power-line-frequency"> 206 <row id="v4l2-power-line-frequency">
230 <entry><constant>V4L2_CID_POWER_LINE_FREQUENCY</constant></entry> 207 <entry><constant>V4L2_CID_POWER_LINE_FREQUENCY</constant></entry>
231 <entry>enum</entry> 208 <entry>enum</entry>
diff --git a/Documentation/DocBook/media/v4l/io.xml b/Documentation/DocBook/media/v4l/io.xml
index 388a34032653..e6c58559ca6b 100644
--- a/Documentation/DocBook/media/v4l/io.xml
+++ b/Documentation/DocBook/media/v4l/io.xml
@@ -477,7 +477,7 @@ rest should be evident.</para>
477 477
478 <note> 478 <note>
479 <title>Experimental</title> 479 <title>Experimental</title>
480 <para>This is an <link linkend="experimental"> experimental </link> 480 <para>This is an <link linkend="experimental">experimental</link>
481 interface and may change in the future.</para> 481 interface and may change in the future.</para>
482 </note> 482 </note>
483 483
@@ -488,7 +488,7 @@ DMA buffer from userspace using a file descriptor previously exported for a
488different or the same device (known as the importer role), or both. This 488different or the same device (known as the importer role), or both. This
489section describes the DMABUF importer role API in V4L2.</para> 489section describes the DMABUF importer role API in V4L2.</para>
490 490
491 <para>Refer to <link linked="vidioc-expbuf"> DMABUF exporting </link> for 491 <para>Refer to <link linkend="vidioc-expbuf">DMABUF exporting</link> for
492details about exporting V4L2 buffers as DMABUF file descriptors.</para> 492details about exporting V4L2 buffers as DMABUF file descriptors.</para>
493 493
494<para>Input and output devices support the streaming I/O method when the 494<para>Input and output devices support the streaming I/O method when the
@@ -741,17 +741,19 @@ applications when an output stream.</entry>
741 <entry>struct timeval</entry> 741 <entry>struct timeval</entry>
742 <entry><structfield>timestamp</structfield></entry> 742 <entry><structfield>timestamp</structfield></entry>
743 <entry></entry> 743 <entry></entry>
744 <entry><para>For input streams this is the 744 <entry><para>For input streams this is time when the first data
745system time (as returned by the <function>gettimeofday()</function> 745 byte was captured, as returned by the
746function) when the first data byte was captured. For output streams 746 <function>clock_gettime()</function> function for the relevant
747the data will not be displayed before this time, secondary to the 747 clock id; see <constant>V4L2_BUF_FLAG_TIMESTAMP_*</constant> in
748nominal frame rate determined by the current video standard in 748 <xref linkend="buffer-flags" />. For output streams the data
749enqueued order. Applications can for example zero this field to 749 will not be displayed before this time, secondary to the nominal
750display frames as soon as possible. The driver stores the time at 750 frame rate determined by the current video standard in enqueued
751which the first data byte was actually sent out in the 751 order. Applications can for example zero this field to display
752<structfield>timestamp</structfield> field. This permits 752 frames as soon as possible. The driver stores the time at which
753applications to monitor the drift between the video and system 753 the first data byte was actually sent out in the
754clock.</para></entry> 754 <structfield>timestamp</structfield> field. This permits
755 applications to monitor the drift between the video and system
756 clock.</para></entry>
755 </row> 757 </row>
756 <row> 758 <row>
757 <entry>&v4l2-timecode;</entry> 759 <entry>&v4l2-timecode;</entry>
@@ -903,7 +905,7 @@ should set this to 0.</entry>
903 </row> 905 </row>
904 <row> 906 <row>
905 <entry></entry> 907 <entry></entry>
906 <entry>__unsigned long</entry> 908 <entry>unsigned long</entry>
907 <entry><structfield>userptr</structfield></entry> 909 <entry><structfield>userptr</structfield></entry>
908 <entry>When the memory type in the containing &v4l2-buffer; is 910 <entry>When the memory type in the containing &v4l2-buffer; is
909 <constant>V4L2_MEMORY_USERPTR</constant>, this is a userspace 911 <constant>V4L2_MEMORY_USERPTR</constant>, this is a userspace
@@ -1114,6 +1116,35 @@ Typically applications shall use this flag for output buffers if the data
1114in this buffer has not been created by the CPU but by some DMA-capable unit, 1116in this buffer has not been created by the CPU but by some DMA-capable unit,
1115in which case caches have not been used.</entry> 1117in which case caches have not been used.</entry>
1116 </row> 1118 </row>
1119 <row>
1120 <entry><constant>V4L2_BUF_FLAG_TIMESTAMP_MASK</constant></entry>
1121 <entry>0xe000</entry>
1122 <entry>Mask for timestamp types below. To test the
1123 timestamp type, mask out bits not belonging to timestamp
1124 type by performing a logical and operation with buffer
1125 flags and timestamp mask.</entry>
1126 </row>
1127 <row>
1128 <entry><constant>V4L2_BUF_FLAG_TIMESTAMP_UNKNOWN</constant></entry>
1129 <entry>0x0000</entry>
1130 <entry>Unknown timestamp type. This type is used by
1131 drivers before Linux 3.9 and may be either monotonic (see
1132 below) or realtime (wall clock). Monotonic clock has been
1133 favoured in embedded systems whereas most of the drivers
1134 use the realtime clock. Either kinds of timestamps are
1135 available in user space via
1136 <function>clock_gettime(2)</function> using clock IDs
1137 <constant>CLOCK_MONOTONIC</constant> and
1138 <constant>CLOCK_REALTIME</constant>, respectively.</entry>
1139 </row>
1140 <row>
1141 <entry><constant>V4L2_BUF_FLAG_TIMESTAMP_MONOTONIC</constant></entry>
1142 <entry>0x2000</entry>
1143 <entry>The buffer timestamp has been taken from the
1144 <constant>CLOCK_MONOTONIC</constant> clock. To access the
1145 same clock outside V4L2, use
1146 <function>clock_gettime(2)</function> .</entry>
1147 </row>
1117 </tbody> 1148 </tbody>
1118 </tgroup> 1149 </tgroup>
1119 </table> 1150 </table>
diff --git a/Documentation/DocBook/media/v4l/pixfmt-nv12m.xml b/Documentation/DocBook/media/v4l/pixfmt-nv12m.xml
index a990b34d911a..f3a3d459fcdf 100644
--- a/Documentation/DocBook/media/v4l/pixfmt-nv12m.xml
+++ b/Documentation/DocBook/media/v4l/pixfmt-nv12m.xml
@@ -6,7 +6,7 @@
6 <refnamediv> 6 <refnamediv>
7 <refname id="V4L2-PIX-FMT-NV12M"><constant>V4L2_PIX_FMT_NV12M</constant></refname> 7 <refname id="V4L2-PIX-FMT-NV12M"><constant>V4L2_PIX_FMT_NV12M</constant></refname>
8 <refname id="V4L2-PIX-FMT-NV21M"><constant>V4L2_PIX_FMT_NV21M</constant></refname> 8 <refname id="V4L2-PIX-FMT-NV21M"><constant>V4L2_PIX_FMT_NV21M</constant></refname>
9 <refname id="V4L2-PIX-FMT-NV12MT_16X16"><constant>V4L2_PIX_FMT_NV12MT_16X16</constant></refname> 9 <refname id="V4L2-PIX-FMT-NV12MT-16X16"><constant>V4L2_PIX_FMT_NV12MT_16X16</constant></refname>
10 <refpurpose>Variation of <constant>V4L2_PIX_FMT_NV12</constant> and <constant>V4L2_PIX_FMT_NV21</constant> with planes 10 <refpurpose>Variation of <constant>V4L2_PIX_FMT_NV12</constant> and <constant>V4L2_PIX_FMT_NV21</constant> with planes
11 non contiguous in memory. </refpurpose> 11 non contiguous in memory. </refpurpose>
12 </refnamediv> 12 </refnamediv>
diff --git a/Documentation/DocBook/media/v4l/pixfmt-srggb10alaw8.xml b/Documentation/DocBook/media/v4l/pixfmt-srggb10alaw8.xml
new file mode 100644
index 000000000000..29acc2098cc2
--- /dev/null
+++ b/Documentation/DocBook/media/v4l/pixfmt-srggb10alaw8.xml
@@ -0,0 +1,34 @@
1 <refentry>
2 <refmeta>
3 <refentrytitle>
4 V4L2_PIX_FMT_SBGGR10ALAW8 ('aBA8'),
5 V4L2_PIX_FMT_SGBRG10ALAW8 ('aGA8'),
6 V4L2_PIX_FMT_SGRBG10ALAW8 ('agA8'),
7 V4L2_PIX_FMT_SRGGB10ALAW8 ('aRA8'),
8 </refentrytitle>
9 &manvol;
10 </refmeta>
11 <refnamediv>
12 <refname id="V4L2-PIX-FMT-SBGGR10ALAW8">
13 <constant>V4L2_PIX_FMT_SBGGR10ALAW8</constant>
14 </refname>
15 <refname id="V4L2-PIX-FMT-SGBRG10ALAW8">
16 <constant>V4L2_PIX_FMT_SGBRG10ALAW8</constant>
17 </refname>
18 <refname id="V4L2-PIX-FMT-SGRBG10ALAW8">
19 <constant>V4L2_PIX_FMT_SGRBG10ALAW8</constant>
20 </refname>
21 <refname id="V4L2-PIX-FMT-SRGGB10ALAW8">
22 <constant>V4L2_PIX_FMT_SRGGB10ALAW8</constant>
23 </refname>
24 <refpurpose>10-bit Bayer formats compressed to 8 bits</refpurpose>
25 </refnamediv>
26 <refsect1>
27 <title>Description</title>
28 <para>The following four pixel formats are raw sRGB / Bayer
29 formats with 10 bits per color compressed to 8 bits each,
30 using the A-LAW algorithm. Each color component consumes 8
31 bits of memory. In other respects this format is similar to
32 <xref linkend="V4L2-PIX-FMT-SRGGB8"></xref>.</para>
33 </refsect1>
34 </refentry>
diff --git a/Documentation/DocBook/media/v4l/pixfmt-uv8.xml b/Documentation/DocBook/media/v4l/pixfmt-uv8.xml
new file mode 100644
index 000000000000..c507c1f73cd0
--- /dev/null
+++ b/Documentation/DocBook/media/v4l/pixfmt-uv8.xml
@@ -0,0 +1,62 @@
1 <refentry id="V4L2-PIX-FMT-UV8">
2 <refmeta>
3 <refentrytitle>V4L2_PIX_FMT_UV8 ('UV8')</refentrytitle>
4 &manvol;
5 </refmeta>
6 <refnamediv>
7 <refname><constant>V4L2_PIX_FMT_UV8</constant></refname>
8 <refpurpose>UV plane interleaved</refpurpose>
9 </refnamediv>
10 <refsect1>
11 <title>Description</title>
12 <para>In this format there is no Y plane, Only CbCr plane. ie
13 (UV interleaved)</para>
14 <example>
15 <title>
16 <constant>V4L2_PIX_FMT_UV8</constant>
17 pixel image
18 </title>
19
20 <formalpara>
21 <title>Byte Order.</title>
22 <para>Each cell is one byte.
23 <informaltable frame="none">
24 <tgroup cols="5" align="center">
25 <colspec align="left" colwidth="2*" />
26 <tbody valign="top">
27 <row>
28 <entry>start&nbsp;+&nbsp;0:</entry>
29 <entry>Cb<subscript>00</subscript></entry>
30 <entry>Cr<subscript>00</subscript></entry>
31 <entry>Cb<subscript>01</subscript></entry>
32 <entry>Cr<subscript>01</subscript></entry>
33 </row>
34 <row>
35 <entry>start&nbsp;+&nbsp;4:</entry>
36 <entry>Cb<subscript>10</subscript></entry>
37 <entry>Cr<subscript>10</subscript></entry>
38 <entry>Cb<subscript>11</subscript></entry>
39 <entry>Cr<subscript>11</subscript></entry>
40 </row>
41 <row>
42 <entry>start&nbsp;+&nbsp;8:</entry>
43 <entry>Cb<subscript>20</subscript></entry>
44 <entry>Cr<subscript>20</subscript></entry>
45 <entry>Cb<subscript>21</subscript></entry>
46 <entry>Cr<subscript>21</subscript></entry>
47 </row>
48 <row>
49 <entry>start&nbsp;+&nbsp;12:</entry>
50 <entry>Cb<subscript>30</subscript></entry>
51 <entry>Cr<subscript>30</subscript></entry>
52 <entry>Cb<subscript>31</subscript></entry>
53 <entry>Cr<subscript>31</subscript></entry>
54 </row>
55 </tbody>
56 </tgroup>
57 </informaltable>
58 </para>
59 </formalpara>
60 </example>
61 </refsect1>
62 </refentry>
diff --git a/Documentation/DocBook/media/v4l/pixfmt.xml b/Documentation/DocBook/media/v4l/pixfmt.xml
index bf94f417592c..99b8d2ad6e4f 100644
--- a/Documentation/DocBook/media/v4l/pixfmt.xml
+++ b/Documentation/DocBook/media/v4l/pixfmt.xml
@@ -673,6 +673,7 @@ access the palette, this must be done with ioctls of the Linux framebuffer API.<
673 &sub-srggb8; 673 &sub-srggb8;
674 &sub-sbggr16; 674 &sub-sbggr16;
675 &sub-srggb10; 675 &sub-srggb10;
676 &sub-srggb10alaw8;
676 &sub-srggb10dpcm8; 677 &sub-srggb10dpcm8;
677 &sub-srggb12; 678 &sub-srggb12;
678 </section> 679 </section>
@@ -701,6 +702,7 @@ information.</para>
701 &sub-y12; 702 &sub-y12;
702 &sub-y10b; 703 &sub-y10b;
703 &sub-y16; 704 &sub-y16;
705 &sub-uv8;
704 &sub-yuyv; 706 &sub-yuyv;
705 &sub-uyvy; 707 &sub-uyvy;
706 &sub-yvyu; 708 &sub-yvyu;
diff --git a/Documentation/DocBook/media/v4l/subdev-formats.xml b/Documentation/DocBook/media/v4l/subdev-formats.xml
index a0a936455fae..cc51372ed5e0 100644
--- a/Documentation/DocBook/media/v4l/subdev-formats.xml
+++ b/Documentation/DocBook/media/v4l/subdev-formats.xml
@@ -353,9 +353,9 @@
353 <listitem><para>The number of bits per pixel component. All components are 353 <listitem><para>The number of bits per pixel component. All components are
354 transferred on the same number of bits. Common values are 8, 10 and 12.</para> 354 transferred on the same number of bits. Common values are 8, 10 and 12.</para>
355 </listitem> 355 </listitem>
356 <listitem><para>If the pixel components are DPCM-compressed, a mention of the 356 <listitem><para>The compression (optional). If the pixel components are
357 DPCM compression and the number of bits per compressed pixel component.</para> 357 ALAW- or DPCM-compressed, a mention of the compression scheme and the
358 </listitem> 358 number of bits per compressed pixel component.</para></listitem>
359 <listitem><para>The number of bus samples per pixel. Pixels that are wider than 359 <listitem><para>The number of bus samples per pixel. Pixels that are wider than
360 the bus width must be transferred in multiple samples. Common values are 360 the bus width must be transferred in multiple samples. Common values are
361 1 and 2.</para></listitem> 361 1 and 2.</para></listitem>
@@ -504,6 +504,74 @@
504 <entry>r<subscript>1</subscript></entry> 504 <entry>r<subscript>1</subscript></entry>
505 <entry>r<subscript>0</subscript></entry> 505 <entry>r<subscript>0</subscript></entry>
506 </row> 506 </row>
507 <row id="V4L2-MBUS-FMT-SBGGR10-ALAW8-1X8">
508 <entry>V4L2_MBUS_FMT_SBGGR10_ALAW8_1X8</entry>
509 <entry>0x3015</entry>
510 <entry></entry>
511 <entry>-</entry>
512 <entry>-</entry>
513 <entry>-</entry>
514 <entry>-</entry>
515 <entry>b<subscript>7</subscript></entry>
516 <entry>b<subscript>6</subscript></entry>
517 <entry>b<subscript>5</subscript></entry>
518 <entry>b<subscript>4</subscript></entry>
519 <entry>b<subscript>3</subscript></entry>
520 <entry>b<subscript>2</subscript></entry>
521 <entry>b<subscript>1</subscript></entry>
522 <entry>b<subscript>0</subscript></entry>
523 </row>
524 <row id="V4L2-MBUS-FMT-SGBRG10-ALAW8-1X8">
525 <entry>V4L2_MBUS_FMT_SGBRG10_ALAW8_1X8</entry>
526 <entry>0x3016</entry>
527 <entry></entry>
528 <entry>-</entry>
529 <entry>-</entry>
530 <entry>-</entry>
531 <entry>-</entry>
532 <entry>g<subscript>7</subscript></entry>
533 <entry>g<subscript>6</subscript></entry>
534 <entry>g<subscript>5</subscript></entry>
535 <entry>g<subscript>4</subscript></entry>
536 <entry>g<subscript>3</subscript></entry>
537 <entry>g<subscript>2</subscript></entry>
538 <entry>g<subscript>1</subscript></entry>
539 <entry>g<subscript>0</subscript></entry>
540 </row>
541 <row id="V4L2-MBUS-FMT-SGRBG10-ALAW8-1X8">
542 <entry>V4L2_MBUS_FMT_SGRBG10_ALAW8_1X8</entry>
543 <entry>0x3017</entry>
544 <entry></entry>
545 <entry>-</entry>
546 <entry>-</entry>
547 <entry>-</entry>
548 <entry>-</entry>
549 <entry>g<subscript>7</subscript></entry>
550 <entry>g<subscript>6</subscript></entry>
551 <entry>g<subscript>5</subscript></entry>
552 <entry>g<subscript>4</subscript></entry>
553 <entry>g<subscript>3</subscript></entry>
554 <entry>g<subscript>2</subscript></entry>
555 <entry>g<subscript>1</subscript></entry>
556 <entry>g<subscript>0</subscript></entry>
557 </row>
558 <row id="V4L2-MBUS-FMT-SRGGB10-ALAW8-1X8">
559 <entry>V4L2_MBUS_FMT_SRGGB10_ALAW8_1X8</entry>
560 <entry>0x3018</entry>
561 <entry></entry>
562 <entry>-</entry>
563 <entry>-</entry>
564 <entry>-</entry>
565 <entry>-</entry>
566 <entry>r<subscript>7</subscript></entry>
567 <entry>r<subscript>6</subscript></entry>
568 <entry>r<subscript>5</subscript></entry>
569 <entry>r<subscript>4</subscript></entry>
570 <entry>r<subscript>3</subscript></entry>
571 <entry>r<subscript>2</subscript></entry>
572 <entry>r<subscript>1</subscript></entry>
573 <entry>r<subscript>0</subscript></entry>
574 </row>
507 <row id="V4L2-MBUS-FMT-SBGGR10-DPCM8-1X8"> 575 <row id="V4L2-MBUS-FMT-SBGGR10-DPCM8-1X8">
508 <entry>V4L2_MBUS_FMT_SBGGR10_DPCM8_1X8</entry> 576 <entry>V4L2_MBUS_FMT_SBGGR10_DPCM8_1X8</entry>
509 <entry>0x300b</entry> 577 <entry>0x300b</entry>
@@ -853,10 +921,16 @@
853 <title>Packed YUV Formats</title> 921 <title>Packed YUV Formats</title>
854 922
855 <para>Those data formats transfer pixel data as (possibly downsampled) Y, U 923 <para>Those data formats transfer pixel data as (possibly downsampled) Y, U
856 and V components. The format code is made of the following information. 924 and V components. Some formats include dummy bits in some of their samples
925 and are collectively referred to as "YDYC" (Y-Dummy-Y-Chroma) formats.
926 One cannot rely on the values of these dummy bits as those are undefined.
927 </para>
928 <para>The format code is made of the following information.
857 <itemizedlist> 929 <itemizedlist>
858 <listitem><para>The Y, U and V components order code, as transferred on the 930 <listitem><para>The Y, U and V components order code, as transferred on the
859 bus. Possible values are YUYV, UYVY, YVYU and VYUY.</para></listitem> 931 bus. Possible values are YUYV, UYVY, YVYU and VYUY for formats with no
932 dummy bit, and YDYUYDYV, YDYVYDYU, YUYDYVYD and YVYDYUYD for YDYC formats.
933 </para></listitem>
860 <listitem><para>The number of bits per pixel component. All components are 934 <listitem><para>The number of bits per pixel component. All components are
861 transferred on the same number of bits. Common values are 8, 10 and 12.</para> 935 transferred on the same number of bits. Common values are 8, 10 and 12.</para>
862 </listitem> 936 </listitem>
@@ -877,7 +951,21 @@
877 U, Y, V, Y order will be named <constant>V4L2_MBUS_FMT_UYVY8_2X8</constant>. 951 U, Y, V, Y order will be named <constant>V4L2_MBUS_FMT_UYVY8_2X8</constant>.
878 </para> 952 </para>
879 953
880 <para>The following table lisst existing packet YUV formats.</para> 954 <para><xref linkend="v4l2-mbus-pixelcode-yuv8"/> list existing packet YUV
955 formats and describes the organization of each pixel data in each sample.
956 When a format pattern is split across multiple samples each of the samples
957 in the pattern is described.</para>
958
959 <para>The role of each bit transferred over the bus is identified by one
960 of the following codes.</para>
961
962 <itemizedlist>
963 <listitem><para>y<subscript>x</subscript> for luma component bit number x</para></listitem>
964 <listitem><para>u<subscript>x</subscript> for blue chroma component bit number x</para></listitem>
965 <listitem><para>v<subscript>x</subscript> for red chroma component bit number x</para></listitem>
966 <listitem><para>- for non-available bits (for positions higher than the bus width)</para></listitem>
967 <listitem><para>d for dummy bits</para></listitem>
968 </itemizedlist>
881 969
882 <table pgwide="0" frame="none" id="v4l2-mbus-pixelcode-yuv8"> 970 <table pgwide="0" frame="none" id="v4l2-mbus-pixelcode-yuv8">
883 <title>YUV Formats</title> 971 <title>YUV Formats</title>
@@ -885,27 +973,37 @@
885 <colspec colname="id" align="left" /> 973 <colspec colname="id" align="left" />
886 <colspec colname="code" align="center"/> 974 <colspec colname="code" align="center"/>
887 <colspec colname="bit" /> 975 <colspec colname="bit" />
888 <colspec colnum="4" colname="b19" align="center" /> 976 <colspec colnum="4" colname="b29" align="center" />
889 <colspec colnum="5" colname="b18" align="center" /> 977 <colspec colnum="5" colname="b28" align="center" />
890 <colspec colnum="6" colname="b17" align="center" /> 978 <colspec colnum="6" colname="b27" align="center" />
891 <colspec colnum="7" colname="b16" align="center" /> 979 <colspec colnum="7" colname="b26" align="center" />
892 <colspec colnum="8" colname="b15" align="center" /> 980 <colspec colnum="8" colname="b25" align="center" />
893 <colspec colnum="9" colname="b14" align="center" /> 981 <colspec colnum="9" colname="b24" align="center" />
894 <colspec colnum="10" colname="b13" align="center" /> 982 <colspec colnum="10" colname="b23" align="center" />
895 <colspec colnum="11" colname="b12" align="center" /> 983 <colspec colnum="11" colname="b22" align="center" />
896 <colspec colnum="12" colname="b11" align="center" /> 984 <colspec colnum="12" colname="b21" align="center" />
897 <colspec colnum="13" colname="b10" align="center" /> 985 <colspec colnum="13" colname="b20" align="center" />
898 <colspec colnum="14" colname="b09" align="center" /> 986 <colspec colnum="14" colname="b19" align="center" />
899 <colspec colnum="15" colname="b08" align="center" /> 987 <colspec colnum="15" colname="b18" align="center" />
900 <colspec colnum="16" colname="b07" align="center" /> 988 <colspec colnum="16" colname="b17" align="center" />
901 <colspec colnum="17" colname="b06" align="center" /> 989 <colspec colnum="17" colname="b16" align="center" />
902 <colspec colnum="18" colname="b05" align="center" /> 990 <colspec colnum="18" colname="b15" align="center" />
903 <colspec colnum="19" colname="b04" align="center" /> 991 <colspec colnum="19" colname="b14" align="center" />
904 <colspec colnum="20" colname="b03" align="center" /> 992 <colspec colnum="20" colname="b13" align="center" />
905 <colspec colnum="21" colname="b02" align="center" /> 993 <colspec colnum="21" colname="b12" align="center" />
906 <colspec colnum="22" colname="b01" align="center" /> 994 <colspec colnum="22" colname="b11" align="center" />
907 <colspec colnum="23" colname="b00" align="center" /> 995 <colspec colnum="23" colname="b10" align="center" />
908 <spanspec namest="b19" nameend="b00" spanname="b0" /> 996 <colspec colnum="24" colname="b09" align="center" />
997 <colspec colnum="25" colname="b08" align="center" />
998 <colspec colnum="26" colname="b07" align="center" />
999 <colspec colnum="27" colname="b06" align="center" />
1000 <colspec colnum="28" colname="b05" align="center" />
1001 <colspec colnum="29" colname="b04" align="center" />
1002 <colspec colnum="30" colname="b03" align="center" />
1003 <colspec colnum="31" colname="b02" align="center" />
1004 <colspec colnum="32" colname="b01" align="center" />
1005 <colspec colnum="33" colname="b00" align="center" />
1006 <spanspec namest="b29" nameend="b00" spanname="b0" />
909 <thead> 1007 <thead>
910 <row> 1008 <row>
911 <entry>Identifier</entry> 1009 <entry>Identifier</entry>
@@ -917,6 +1015,16 @@
917 <entry></entry> 1015 <entry></entry>
918 <entry></entry> 1016 <entry></entry>
919 <entry>Bit</entry> 1017 <entry>Bit</entry>
1018 <entry>29</entry>
1019 <entry>28</entry>
1020 <entry>27</entry>
1021 <entry>26</entry>
1022 <entry>25</entry>
1023 <entry>24</entry>
1024 <entry>23</entry>
1025 <entry>22</entry>
1026 <entry>21</entry>
1027 <entry>10</entry>
920 <entry>19</entry> 1028 <entry>19</entry>
921 <entry>18</entry> 1029 <entry>18</entry>
922 <entry>17</entry> 1030 <entry>17</entry>
@@ -944,16 +1052,8 @@
944 <entry>V4L2_MBUS_FMT_Y8_1X8</entry> 1052 <entry>V4L2_MBUS_FMT_Y8_1X8</entry>
945 <entry>0x2001</entry> 1053 <entry>0x2001</entry>
946 <entry></entry> 1054 <entry></entry>
947 <entry>-</entry> 1055 &dash-ent-10;
948 <entry>-</entry> 1056 &dash-ent-10;
949 <entry>-</entry>
950 <entry>-</entry>
951 <entry>-</entry>
952 <entry>-</entry>
953 <entry>-</entry>
954 <entry>-</entry>
955 <entry>-</entry>
956 <entry>-</entry>
957 <entry>-</entry> 1057 <entry>-</entry>
958 <entry>-</entry> 1058 <entry>-</entry>
959 <entry>y<subscript>7</subscript></entry> 1059 <entry>y<subscript>7</subscript></entry>
@@ -965,9 +1065,9 @@
965 <entry>y<subscript>1</subscript></entry> 1065 <entry>y<subscript>1</subscript></entry>
966 <entry>y<subscript>0</subscript></entry> 1066 <entry>y<subscript>0</subscript></entry>
967 </row> 1067 </row>
968 <row id="V4L2-MBUS-FMT-UYVY8-1_5X8"> 1068 <row id="V4L2-MBUS-FMT-UV8-1X8">
969 <entry>V4L2_MBUS_FMT_UYVY8_1_5X8</entry> 1069 <entry>V4L2_MBUS_FMT_UV8_1X8</entry>
970 <entry>0x2002</entry> 1070 <entry>0x2015</entry>
971 <entry></entry> 1071 <entry></entry>
972 <entry>-</entry> 1072 <entry>-</entry>
973 <entry>-</entry> 1073 <entry>-</entry>
@@ -1006,6 +1106,40 @@
1006 <entry>-</entry> 1106 <entry>-</entry>
1007 <entry>-</entry> 1107 <entry>-</entry>
1008 <entry>-</entry> 1108 <entry>-</entry>
1109 <entry>v<subscript>7</subscript></entry>
1110 <entry>v<subscript>6</subscript></entry>
1111 <entry>v<subscript>5</subscript></entry>
1112 <entry>v<subscript>4</subscript></entry>
1113 <entry>v<subscript>3</subscript></entry>
1114 <entry>v<subscript>2</subscript></entry>
1115 <entry>v<subscript>1</subscript></entry>
1116 <entry>v<subscript>0</subscript></entry>
1117 </row>
1118 <row id="V4L2-MBUS-FMT-UYVY8-1_5X8">
1119 <entry>V4L2_MBUS_FMT_UYVY8_1_5X8</entry>
1120 <entry>0x2002</entry>
1121 <entry></entry>
1122 &dash-ent-10;
1123 &dash-ent-10;
1124 <entry>-</entry>
1125 <entry>-</entry>
1126 <entry>u<subscript>7</subscript></entry>
1127 <entry>u<subscript>6</subscript></entry>
1128 <entry>u<subscript>5</subscript></entry>
1129 <entry>u<subscript>4</subscript></entry>
1130 <entry>u<subscript>3</subscript></entry>
1131 <entry>u<subscript>2</subscript></entry>
1132 <entry>u<subscript>1</subscript></entry>
1133 <entry>u<subscript>0</subscript></entry>
1134 </row>
1135 <row>
1136 <entry></entry>
1137 <entry></entry>
1138 <entry></entry>
1139 &dash-ent-10;
1140 &dash-ent-10;
1141 <entry>-</entry>
1142 <entry>-</entry>
1009 <entry>y<subscript>7</subscript></entry> 1143 <entry>y<subscript>7</subscript></entry>
1010 <entry>y<subscript>6</subscript></entry> 1144 <entry>y<subscript>6</subscript></entry>
1011 <entry>y<subscript>5</subscript></entry> 1145 <entry>y<subscript>5</subscript></entry>
@@ -1019,16 +1153,8 @@
1019 <entry></entry> 1153 <entry></entry>
1020 <entry></entry> 1154 <entry></entry>
1021 <entry></entry> 1155 <entry></entry>
1022 <entry>-</entry> 1156 &dash-ent-10;
1023 <entry>-</entry> 1157 &dash-ent-10;
1024 <entry>-</entry>
1025 <entry>-</entry>
1026 <entry>-</entry>
1027 <entry>-</entry>
1028 <entry>-</entry>
1029 <entry>-</entry>
1030 <entry>-</entry>
1031 <entry>-</entry>
1032 <entry>-</entry> 1158 <entry>-</entry>
1033 <entry>-</entry> 1159 <entry>-</entry>
1034 <entry>y<subscript>7</subscript></entry> 1160 <entry>y<subscript>7</subscript></entry>
@@ -1044,16 +1170,8 @@
1044 <entry></entry> 1170 <entry></entry>
1045 <entry></entry> 1171 <entry></entry>
1046 <entry></entry> 1172 <entry></entry>
1047 <entry>-</entry> 1173 &dash-ent-10;
1048 <entry>-</entry> 1174 &dash-ent-10;
1049 <entry>-</entry>
1050 <entry>-</entry>
1051 <entry>-</entry>
1052 <entry>-</entry>
1053 <entry>-</entry>
1054 <entry>-</entry>
1055 <entry>-</entry>
1056 <entry>-</entry>
1057 <entry>-</entry> 1175 <entry>-</entry>
1058 <entry>-</entry> 1176 <entry>-</entry>
1059 <entry>v<subscript>7</subscript></entry> 1177 <entry>v<subscript>7</subscript></entry>
@@ -1069,16 +1187,8 @@
1069 <entry></entry> 1187 <entry></entry>
1070 <entry></entry> 1188 <entry></entry>
1071 <entry></entry> 1189 <entry></entry>
1072 <entry>-</entry> 1190 &dash-ent-10;
1073 <entry>-</entry> 1191 &dash-ent-10;
1074 <entry>-</entry>
1075 <entry>-</entry>
1076 <entry>-</entry>
1077 <entry>-</entry>
1078 <entry>-</entry>
1079 <entry>-</entry>
1080 <entry>-</entry>
1081 <entry>-</entry>
1082 <entry>-</entry> 1192 <entry>-</entry>
1083 <entry>-</entry> 1193 <entry>-</entry>
1084 <entry>y<subscript>7</subscript></entry> 1194 <entry>y<subscript>7</subscript></entry>
@@ -1094,16 +1204,8 @@
1094 <entry></entry> 1204 <entry></entry>
1095 <entry></entry> 1205 <entry></entry>
1096 <entry></entry> 1206 <entry></entry>
1097 <entry>-</entry> 1207 &dash-ent-10;
1098 <entry>-</entry> 1208 &dash-ent-10;
1099 <entry>-</entry>
1100 <entry>-</entry>
1101 <entry>-</entry>
1102 <entry>-</entry>
1103 <entry>-</entry>
1104 <entry>-</entry>
1105 <entry>-</entry>
1106 <entry>-</entry>
1107 <entry>-</entry> 1209 <entry>-</entry>
1108 <entry>-</entry> 1210 <entry>-</entry>
1109 <entry>y<subscript>7</subscript></entry> 1211 <entry>y<subscript>7</subscript></entry>
@@ -1119,16 +1221,8 @@
1119 <entry>V4L2_MBUS_FMT_VYUY8_1_5X8</entry> 1221 <entry>V4L2_MBUS_FMT_VYUY8_1_5X8</entry>
1120 <entry>0x2003</entry> 1222 <entry>0x2003</entry>
1121 <entry></entry> 1223 <entry></entry>
1122 <entry>-</entry> 1224 &dash-ent-10;
1123 <entry>-</entry> 1225 &dash-ent-10;
1124 <entry>-</entry>
1125 <entry>-</entry>
1126 <entry>-</entry>
1127 <entry>-</entry>
1128 <entry>-</entry>
1129 <entry>-</entry>
1130 <entry>-</entry>
1131 <entry>-</entry>
1132 <entry>-</entry> 1226 <entry>-</entry>
1133 <entry>-</entry> 1227 <entry>-</entry>
1134 <entry>v<subscript>7</subscript></entry> 1228 <entry>v<subscript>7</subscript></entry>
@@ -1144,16 +1238,8 @@
1144 <entry></entry> 1238 <entry></entry>
1145 <entry></entry> 1239 <entry></entry>
1146 <entry></entry> 1240 <entry></entry>
1147 <entry>-</entry> 1241 &dash-ent-10;
1148 <entry>-</entry> 1242 &dash-ent-10;
1149 <entry>-</entry>
1150 <entry>-</entry>
1151 <entry>-</entry>
1152 <entry>-</entry>
1153 <entry>-</entry>
1154 <entry>-</entry>
1155 <entry>-</entry>
1156 <entry>-</entry>
1157 <entry>-</entry> 1243 <entry>-</entry>
1158 <entry>-</entry> 1244 <entry>-</entry>
1159 <entry>y<subscript>7</subscript></entry> 1245 <entry>y<subscript>7</subscript></entry>
@@ -1169,16 +1255,8 @@
1169 <entry></entry> 1255 <entry></entry>
1170 <entry></entry> 1256 <entry></entry>
1171 <entry></entry> 1257 <entry></entry>
1172 <entry>-</entry> 1258 &dash-ent-10;
1173 <entry>-</entry> 1259 &dash-ent-10;
1174 <entry>-</entry>
1175 <entry>-</entry>
1176 <entry>-</entry>
1177 <entry>-</entry>
1178 <entry>-</entry>
1179 <entry>-</entry>
1180 <entry>-</entry>
1181 <entry>-</entry>
1182 <entry>-</entry> 1260 <entry>-</entry>
1183 <entry>-</entry> 1261 <entry>-</entry>
1184 <entry>y<subscript>7</subscript></entry> 1262 <entry>y<subscript>7</subscript></entry>
@@ -1194,16 +1272,8 @@
1194 <entry></entry> 1272 <entry></entry>
1195 <entry></entry> 1273 <entry></entry>
1196 <entry></entry> 1274 <entry></entry>
1197 <entry>-</entry> 1275 &dash-ent-10;
1198 <entry>-</entry> 1276 &dash-ent-10;
1199 <entry>-</entry>
1200 <entry>-</entry>
1201 <entry>-</entry>
1202 <entry>-</entry>
1203 <entry>-</entry>
1204 <entry>-</entry>
1205 <entry>-</entry>
1206 <entry>-</entry>
1207 <entry>-</entry> 1277 <entry>-</entry>
1208 <entry>-</entry> 1278 <entry>-</entry>
1209 <entry>u<subscript>7</subscript></entry> 1279 <entry>u<subscript>7</subscript></entry>
@@ -1219,16 +1289,8 @@
1219 <entry></entry> 1289 <entry></entry>
1220 <entry></entry> 1290 <entry></entry>
1221 <entry></entry> 1291 <entry></entry>
1222 <entry>-</entry> 1292 &dash-ent-10;
1223 <entry>-</entry> 1293 &dash-ent-10;
1224 <entry>-</entry>
1225 <entry>-</entry>
1226 <entry>-</entry>
1227 <entry>-</entry>
1228 <entry>-</entry>
1229 <entry>-</entry>
1230 <entry>-</entry>
1231 <entry>-</entry>
1232 <entry>-</entry> 1294 <entry>-</entry>
1233 <entry>-</entry> 1295 <entry>-</entry>
1234 <entry>y<subscript>7</subscript></entry> 1296 <entry>y<subscript>7</subscript></entry>
@@ -1244,16 +1306,8 @@
1244 <entry></entry> 1306 <entry></entry>
1245 <entry></entry> 1307 <entry></entry>
1246 <entry></entry> 1308 <entry></entry>
1247 <entry>-</entry> 1309 &dash-ent-10;
1248 <entry>-</entry> 1310 &dash-ent-10;
1249 <entry>-</entry>
1250 <entry>-</entry>
1251 <entry>-</entry>
1252 <entry>-</entry>
1253 <entry>-</entry>
1254 <entry>-</entry>
1255 <entry>-</entry>
1256 <entry>-</entry>
1257 <entry>-</entry> 1311 <entry>-</entry>
1258 <entry>-</entry> 1312 <entry>-</entry>
1259 <entry>y<subscript>7</subscript></entry> 1313 <entry>y<subscript>7</subscript></entry>
@@ -1269,16 +1323,8 @@
1269 <entry>V4L2_MBUS_FMT_YUYV8_1_5X8</entry> 1323 <entry>V4L2_MBUS_FMT_YUYV8_1_5X8</entry>
1270 <entry>0x2004</entry> 1324 <entry>0x2004</entry>
1271 <entry></entry> 1325 <entry></entry>
1272 <entry>-</entry> 1326 &dash-ent-10;
1273 <entry>-</entry> 1327 &dash-ent-10;
1274 <entry>-</entry>
1275 <entry>-</entry>
1276 <entry>-</entry>
1277 <entry>-</entry>
1278 <entry>-</entry>
1279 <entry>-</entry>
1280 <entry>-</entry>
1281 <entry>-</entry>
1282 <entry>-</entry> 1328 <entry>-</entry>
1283 <entry>-</entry> 1329 <entry>-</entry>
1284 <entry>y<subscript>7</subscript></entry> 1330 <entry>y<subscript>7</subscript></entry>
@@ -1294,16 +1340,8 @@
1294 <entry></entry> 1340 <entry></entry>
1295 <entry></entry> 1341 <entry></entry>
1296 <entry></entry> 1342 <entry></entry>
1297 <entry>-</entry> 1343 &dash-ent-10;
1298 <entry>-</entry> 1344 &dash-ent-10;
1299 <entry>-</entry>
1300 <entry>-</entry>
1301 <entry>-</entry>
1302 <entry>-</entry>
1303 <entry>-</entry>
1304 <entry>-</entry>
1305 <entry>-</entry>
1306 <entry>-</entry>
1307 <entry>-</entry> 1345 <entry>-</entry>
1308 <entry>-</entry> 1346 <entry>-</entry>
1309 <entry>y<subscript>7</subscript></entry> 1347 <entry>y<subscript>7</subscript></entry>
@@ -1319,16 +1357,8 @@
1319 <entry></entry> 1357 <entry></entry>
1320 <entry></entry> 1358 <entry></entry>
1321 <entry></entry> 1359 <entry></entry>
1322 <entry>-</entry> 1360 &dash-ent-10;
1323 <entry>-</entry> 1361 &dash-ent-10;
1324 <entry>-</entry>
1325 <entry>-</entry>
1326 <entry>-</entry>
1327 <entry>-</entry>
1328 <entry>-</entry>
1329 <entry>-</entry>
1330 <entry>-</entry>
1331 <entry>-</entry>
1332 <entry>-</entry> 1362 <entry>-</entry>
1333 <entry>-</entry> 1363 <entry>-</entry>
1334 <entry>u<subscript>7</subscript></entry> 1364 <entry>u<subscript>7</subscript></entry>
@@ -1344,16 +1374,8 @@
1344 <entry></entry> 1374 <entry></entry>
1345 <entry></entry> 1375 <entry></entry>
1346 <entry></entry> 1376 <entry></entry>
1347 <entry>-</entry> 1377 &dash-ent-10;
1348 <entry>-</entry> 1378 &dash-ent-10;
1349 <entry>-</entry>
1350 <entry>-</entry>
1351 <entry>-</entry>
1352 <entry>-</entry>
1353 <entry>-</entry>
1354 <entry>-</entry>
1355 <entry>-</entry>
1356 <entry>-</entry>
1357 <entry>-</entry> 1379 <entry>-</entry>
1358 <entry>-</entry> 1380 <entry>-</entry>
1359 <entry>y<subscript>7</subscript></entry> 1381 <entry>y<subscript>7</subscript></entry>
@@ -1369,16 +1391,8 @@
1369 <entry></entry> 1391 <entry></entry>
1370 <entry></entry> 1392 <entry></entry>
1371 <entry></entry> 1393 <entry></entry>
1372 <entry>-</entry> 1394 &dash-ent-10;
1373 <entry>-</entry> 1395 &dash-ent-10;
1374 <entry>-</entry>
1375 <entry>-</entry>
1376 <entry>-</entry>
1377 <entry>-</entry>
1378 <entry>-</entry>
1379 <entry>-</entry>
1380 <entry>-</entry>
1381 <entry>-</entry>
1382 <entry>-</entry> 1396 <entry>-</entry>
1383 <entry>-</entry> 1397 <entry>-</entry>
1384 <entry>y<subscript>7</subscript></entry> 1398 <entry>y<subscript>7</subscript></entry>
@@ -1394,16 +1408,8 @@
1394 <entry></entry> 1408 <entry></entry>
1395 <entry></entry> 1409 <entry></entry>
1396 <entry></entry> 1410 <entry></entry>
1397 <entry>-</entry> 1411 &dash-ent-10;
1398 <entry>-</entry> 1412 &dash-ent-10;
1399 <entry>-</entry>
1400 <entry>-</entry>
1401 <entry>-</entry>
1402 <entry>-</entry>
1403 <entry>-</entry>
1404 <entry>-</entry>
1405 <entry>-</entry>
1406 <entry>-</entry>
1407 <entry>-</entry> 1413 <entry>-</entry>
1408 <entry>-</entry> 1414 <entry>-</entry>
1409 <entry>v<subscript>7</subscript></entry> 1415 <entry>v<subscript>7</subscript></entry>
@@ -1419,16 +1425,8 @@
1419 <entry>V4L2_MBUS_FMT_YVYU8_1_5X8</entry> 1425 <entry>V4L2_MBUS_FMT_YVYU8_1_5X8</entry>
1420 <entry>0x2005</entry> 1426 <entry>0x2005</entry>
1421 <entry></entry> 1427 <entry></entry>
1422 <entry>-</entry> 1428 &dash-ent-10;
1423 <entry>-</entry> 1429 &dash-ent-10;
1424 <entry>-</entry>
1425 <entry>-</entry>
1426 <entry>-</entry>
1427 <entry>-</entry>
1428 <entry>-</entry>
1429 <entry>-</entry>
1430 <entry>-</entry>
1431 <entry>-</entry>
1432 <entry>-</entry> 1430 <entry>-</entry>
1433 <entry>-</entry> 1431 <entry>-</entry>
1434 <entry>y<subscript>7</subscript></entry> 1432 <entry>y<subscript>7</subscript></entry>
@@ -1444,16 +1442,8 @@
1444 <entry></entry> 1442 <entry></entry>
1445 <entry></entry> 1443 <entry></entry>
1446 <entry></entry> 1444 <entry></entry>
1447 <entry>-</entry> 1445 &dash-ent-10;
1448 <entry>-</entry> 1446 &dash-ent-10;
1449 <entry>-</entry>
1450 <entry>-</entry>
1451 <entry>-</entry>
1452 <entry>-</entry>
1453 <entry>-</entry>
1454 <entry>-</entry>
1455 <entry>-</entry>
1456 <entry>-</entry>
1457 <entry>-</entry> 1447 <entry>-</entry>
1458 <entry>-</entry> 1448 <entry>-</entry>
1459 <entry>y<subscript>7</subscript></entry> 1449 <entry>y<subscript>7</subscript></entry>
@@ -1469,16 +1459,8 @@
1469 <entry></entry> 1459 <entry></entry>
1470 <entry></entry> 1460 <entry></entry>
1471 <entry></entry> 1461 <entry></entry>
1472 <entry>-</entry> 1462 &dash-ent-10;
1473 <entry>-</entry> 1463 &dash-ent-10;
1474 <entry>-</entry>
1475 <entry>-</entry>
1476 <entry>-</entry>
1477 <entry>-</entry>
1478 <entry>-</entry>
1479 <entry>-</entry>
1480 <entry>-</entry>
1481 <entry>-</entry>
1482 <entry>-</entry> 1464 <entry>-</entry>
1483 <entry>-</entry> 1465 <entry>-</entry>
1484 <entry>v<subscript>7</subscript></entry> 1466 <entry>v<subscript>7</subscript></entry>
@@ -1494,16 +1476,8 @@
1494 <entry></entry> 1476 <entry></entry>
1495 <entry></entry> 1477 <entry></entry>
1496 <entry></entry> 1478 <entry></entry>
1497 <entry>-</entry> 1479 &dash-ent-10;
1498 <entry>-</entry> 1480 &dash-ent-10;
1499 <entry>-</entry>
1500 <entry>-</entry>
1501 <entry>-</entry>
1502 <entry>-</entry>
1503 <entry>-</entry>
1504 <entry>-</entry>
1505 <entry>-</entry>
1506 <entry>-</entry>
1507 <entry>-</entry> 1481 <entry>-</entry>
1508 <entry>-</entry> 1482 <entry>-</entry>
1509 <entry>y<subscript>7</subscript></entry> 1483 <entry>y<subscript>7</subscript></entry>
@@ -1519,16 +1493,8 @@
1519 <entry></entry> 1493 <entry></entry>
1520 <entry></entry> 1494 <entry></entry>
1521 <entry></entry> 1495 <entry></entry>
1522 <entry>-</entry> 1496 &dash-ent-10;
1523 <entry>-</entry> 1497 &dash-ent-10;
1524 <entry>-</entry>
1525 <entry>-</entry>
1526 <entry>-</entry>
1527 <entry>-</entry>
1528 <entry>-</entry>
1529 <entry>-</entry>
1530 <entry>-</entry>
1531 <entry>-</entry>
1532 <entry>-</entry> 1498 <entry>-</entry>
1533 <entry>-</entry> 1499 <entry>-</entry>
1534 <entry>y<subscript>7</subscript></entry> 1500 <entry>y<subscript>7</subscript></entry>
@@ -1544,16 +1510,8 @@
1544 <entry></entry> 1510 <entry></entry>
1545 <entry></entry> 1511 <entry></entry>
1546 <entry></entry> 1512 <entry></entry>
1547 <entry>-</entry> 1513 &dash-ent-10;
1548 <entry>-</entry> 1514 &dash-ent-10;
1549 <entry>-</entry>
1550 <entry>-</entry>
1551 <entry>-</entry>
1552 <entry>-</entry>
1553 <entry>-</entry>
1554 <entry>-</entry>
1555 <entry>-</entry>
1556 <entry>-</entry>
1557 <entry>-</entry> 1515 <entry>-</entry>
1558 <entry>-</entry> 1516 <entry>-</entry>
1559 <entry>u<subscript>7</subscript></entry> 1517 <entry>u<subscript>7</subscript></entry>
@@ -1569,16 +1527,8 @@
1569 <entry>V4L2_MBUS_FMT_UYVY8_2X8</entry> 1527 <entry>V4L2_MBUS_FMT_UYVY8_2X8</entry>
1570 <entry>0x2006</entry> 1528 <entry>0x2006</entry>
1571 <entry></entry> 1529 <entry></entry>
1572 <entry>-</entry> 1530 &dash-ent-10;
1573 <entry>-</entry> 1531 &dash-ent-10;
1574 <entry>-</entry>
1575 <entry>-</entry>
1576 <entry>-</entry>
1577 <entry>-</entry>
1578 <entry>-</entry>
1579 <entry>-</entry>
1580 <entry>-</entry>
1581 <entry>-</entry>
1582 <entry>-</entry> 1532 <entry>-</entry>
1583 <entry>-</entry> 1533 <entry>-</entry>
1584 <entry>u<subscript>7</subscript></entry> 1534 <entry>u<subscript>7</subscript></entry>
@@ -1594,16 +1544,8 @@
1594 <entry></entry> 1544 <entry></entry>
1595 <entry></entry> 1545 <entry></entry>
1596 <entry></entry> 1546 <entry></entry>
1597 <entry>-</entry> 1547 &dash-ent-10;
1598 <entry>-</entry> 1548 &dash-ent-10;
1599 <entry>-</entry>
1600 <entry>-</entry>
1601 <entry>-</entry>
1602 <entry>-</entry>
1603 <entry>-</entry>
1604 <entry>-</entry>
1605 <entry>-</entry>
1606 <entry>-</entry>
1607 <entry>-</entry> 1549 <entry>-</entry>
1608 <entry>-</entry> 1550 <entry>-</entry>
1609 <entry>y<subscript>7</subscript></entry> 1551 <entry>y<subscript>7</subscript></entry>
@@ -1619,16 +1561,8 @@
1619 <entry></entry> 1561 <entry></entry>
1620 <entry></entry> 1562 <entry></entry>
1621 <entry></entry> 1563 <entry></entry>
1622 <entry>-</entry> 1564 &dash-ent-10;
1623 <entry>-</entry> 1565 &dash-ent-10;
1624 <entry>-</entry>
1625 <entry>-</entry>
1626 <entry>-</entry>
1627 <entry>-</entry>
1628 <entry>-</entry>
1629 <entry>-</entry>
1630 <entry>-</entry>
1631 <entry>-</entry>
1632 <entry>-</entry> 1566 <entry>-</entry>
1633 <entry>-</entry> 1567 <entry>-</entry>
1634 <entry>v<subscript>7</subscript></entry> 1568 <entry>v<subscript>7</subscript></entry>
@@ -1644,16 +1578,8 @@
1644 <entry></entry> 1578 <entry></entry>
1645 <entry></entry> 1579 <entry></entry>
1646 <entry></entry> 1580 <entry></entry>
1647 <entry>-</entry> 1581 &dash-ent-10;
1648 <entry>-</entry> 1582 &dash-ent-10;
1649 <entry>-</entry>
1650 <entry>-</entry>
1651 <entry>-</entry>
1652 <entry>-</entry>
1653 <entry>-</entry>
1654 <entry>-</entry>
1655 <entry>-</entry>
1656 <entry>-</entry>
1657 <entry>-</entry> 1583 <entry>-</entry>
1658 <entry>-</entry> 1584 <entry>-</entry>
1659 <entry>y<subscript>7</subscript></entry> 1585 <entry>y<subscript>7</subscript></entry>
@@ -1669,16 +1595,8 @@
1669 <entry>V4L2_MBUS_FMT_VYUY8_2X8</entry> 1595 <entry>V4L2_MBUS_FMT_VYUY8_2X8</entry>
1670 <entry>0x2007</entry> 1596 <entry>0x2007</entry>
1671 <entry></entry> 1597 <entry></entry>
1672 <entry>-</entry> 1598 &dash-ent-10;
1673 <entry>-</entry> 1599 &dash-ent-10;
1674 <entry>-</entry>
1675 <entry>-</entry>
1676 <entry>-</entry>
1677 <entry>-</entry>
1678 <entry>-</entry>
1679 <entry>-</entry>
1680 <entry>-</entry>
1681 <entry>-</entry>
1682 <entry>-</entry> 1600 <entry>-</entry>
1683 <entry>-</entry> 1601 <entry>-</entry>
1684 <entry>v<subscript>7</subscript></entry> 1602 <entry>v<subscript>7</subscript></entry>
@@ -1694,16 +1612,8 @@
1694 <entry></entry> 1612 <entry></entry>
1695 <entry></entry> 1613 <entry></entry>
1696 <entry></entry> 1614 <entry></entry>
1697 <entry>-</entry> 1615 &dash-ent-10;
1698 <entry>-</entry> 1616 &dash-ent-10;
1699 <entry>-</entry>
1700 <entry>-</entry>
1701 <entry>-</entry>
1702 <entry>-</entry>
1703 <entry>-</entry>
1704 <entry>-</entry>
1705 <entry>-</entry>
1706 <entry>-</entry>
1707 <entry>-</entry> 1617 <entry>-</entry>
1708 <entry>-</entry> 1618 <entry>-</entry>
1709 <entry>y<subscript>7</subscript></entry> 1619 <entry>y<subscript>7</subscript></entry>
@@ -1719,16 +1629,8 @@
1719 <entry></entry> 1629 <entry></entry>
1720 <entry></entry> 1630 <entry></entry>
1721 <entry></entry> 1631 <entry></entry>
1722 <entry>-</entry> 1632 &dash-ent-10;
1723 <entry>-</entry> 1633 &dash-ent-10;
1724 <entry>-</entry>
1725 <entry>-</entry>
1726 <entry>-</entry>
1727 <entry>-</entry>
1728 <entry>-</entry>
1729 <entry>-</entry>
1730 <entry>-</entry>
1731 <entry>-</entry>
1732 <entry>-</entry> 1634 <entry>-</entry>
1733 <entry>-</entry> 1635 <entry>-</entry>
1734 <entry>u<subscript>7</subscript></entry> 1636 <entry>u<subscript>7</subscript></entry>
@@ -1744,16 +1646,8 @@
1744 <entry></entry> 1646 <entry></entry>
1745 <entry></entry> 1647 <entry></entry>
1746 <entry></entry> 1648 <entry></entry>
1747 <entry>-</entry> 1649 &dash-ent-10;
1748 <entry>-</entry> 1650 &dash-ent-10;
1749 <entry>-</entry>
1750 <entry>-</entry>
1751 <entry>-</entry>
1752 <entry>-</entry>
1753 <entry>-</entry>
1754 <entry>-</entry>
1755 <entry>-</entry>
1756 <entry>-</entry>
1757 <entry>-</entry> 1651 <entry>-</entry>
1758 <entry>-</entry> 1652 <entry>-</entry>
1759 <entry>y<subscript>7</subscript></entry> 1653 <entry>y<subscript>7</subscript></entry>
@@ -1769,16 +1663,8 @@
1769 <entry>V4L2_MBUS_FMT_YUYV8_2X8</entry> 1663 <entry>V4L2_MBUS_FMT_YUYV8_2X8</entry>
1770 <entry>0x2008</entry> 1664 <entry>0x2008</entry>
1771 <entry></entry> 1665 <entry></entry>
1772 <entry>-</entry> 1666 &dash-ent-10;
1773 <entry>-</entry> 1667 &dash-ent-10;
1774 <entry>-</entry>
1775 <entry>-</entry>
1776 <entry>-</entry>
1777 <entry>-</entry>
1778 <entry>-</entry>
1779 <entry>-</entry>
1780 <entry>-</entry>
1781 <entry>-</entry>
1782 <entry>-</entry> 1668 <entry>-</entry>
1783 <entry>-</entry> 1669 <entry>-</entry>
1784 <entry>y<subscript>7</subscript></entry> 1670 <entry>y<subscript>7</subscript></entry>
@@ -1794,16 +1680,8 @@
1794 <entry></entry> 1680 <entry></entry>
1795 <entry></entry> 1681 <entry></entry>
1796 <entry></entry> 1682 <entry></entry>
1797 <entry>-</entry> 1683 &dash-ent-10;
1798 <entry>-</entry> 1684 &dash-ent-10;
1799 <entry>-</entry>
1800 <entry>-</entry>
1801 <entry>-</entry>
1802 <entry>-</entry>
1803 <entry>-</entry>
1804 <entry>-</entry>
1805 <entry>-</entry>
1806 <entry>-</entry>
1807 <entry>-</entry> 1685 <entry>-</entry>
1808 <entry>-</entry> 1686 <entry>-</entry>
1809 <entry>u<subscript>7</subscript></entry> 1687 <entry>u<subscript>7</subscript></entry>
@@ -1819,16 +1697,8 @@
1819 <entry></entry> 1697 <entry></entry>
1820 <entry></entry> 1698 <entry></entry>
1821 <entry></entry> 1699 <entry></entry>
1822 <entry>-</entry> 1700 &dash-ent-10;
1823 <entry>-</entry> 1701 &dash-ent-10;
1824 <entry>-</entry>
1825 <entry>-</entry>
1826 <entry>-</entry>
1827 <entry>-</entry>
1828 <entry>-</entry>
1829 <entry>-</entry>
1830 <entry>-</entry>
1831 <entry>-</entry>
1832 <entry>-</entry> 1702 <entry>-</entry>
1833 <entry>-</entry> 1703 <entry>-</entry>
1834 <entry>y<subscript>7</subscript></entry> 1704 <entry>y<subscript>7</subscript></entry>
@@ -1844,16 +1714,8 @@
1844 <entry></entry> 1714 <entry></entry>
1845 <entry></entry> 1715 <entry></entry>
1846 <entry></entry> 1716 <entry></entry>
1847 <entry>-</entry> 1717 &dash-ent-10;
1848 <entry>-</entry> 1718 &dash-ent-10;
1849 <entry>-</entry>
1850 <entry>-</entry>
1851 <entry>-</entry>
1852 <entry>-</entry>
1853 <entry>-</entry>
1854 <entry>-</entry>
1855 <entry>-</entry>
1856 <entry>-</entry>
1857 <entry>-</entry> 1719 <entry>-</entry>
1858 <entry>-</entry> 1720 <entry>-</entry>
1859 <entry>v<subscript>7</subscript></entry> 1721 <entry>v<subscript>7</subscript></entry>
@@ -1869,16 +1731,8 @@
1869 <entry>V4L2_MBUS_FMT_YVYU8_2X8</entry> 1731 <entry>V4L2_MBUS_FMT_YVYU8_2X8</entry>
1870 <entry>0x2009</entry> 1732 <entry>0x2009</entry>
1871 <entry></entry> 1733 <entry></entry>
1872 <entry>-</entry> 1734 &dash-ent-10;
1873 <entry>-</entry> 1735 &dash-ent-10;
1874 <entry>-</entry>
1875 <entry>-</entry>
1876 <entry>-</entry>
1877 <entry>-</entry>
1878 <entry>-</entry>
1879 <entry>-</entry>
1880 <entry>-</entry>
1881 <entry>-</entry>
1882 <entry>-</entry> 1736 <entry>-</entry>
1883 <entry>-</entry> 1737 <entry>-</entry>
1884 <entry>y<subscript>7</subscript></entry> 1738 <entry>y<subscript>7</subscript></entry>
@@ -1894,16 +1748,8 @@
1894 <entry></entry> 1748 <entry></entry>
1895 <entry></entry> 1749 <entry></entry>
1896 <entry></entry> 1750 <entry></entry>
1897 <entry>-</entry> 1751 &dash-ent-10;
1898 <entry>-</entry> 1752 &dash-ent-10;
1899 <entry>-</entry>
1900 <entry>-</entry>
1901 <entry>-</entry>
1902 <entry>-</entry>
1903 <entry>-</entry>
1904 <entry>-</entry>
1905 <entry>-</entry>
1906 <entry>-</entry>
1907 <entry>-</entry> 1753 <entry>-</entry>
1908 <entry>-</entry> 1754 <entry>-</entry>
1909 <entry>v<subscript>7</subscript></entry> 1755 <entry>v<subscript>7</subscript></entry>
@@ -1919,16 +1765,8 @@
1919 <entry></entry> 1765 <entry></entry>
1920 <entry></entry> 1766 <entry></entry>
1921 <entry></entry> 1767 <entry></entry>
1922 <entry>-</entry> 1768 &dash-ent-10;
1923 <entry>-</entry> 1769 &dash-ent-10;
1924 <entry>-</entry>
1925 <entry>-</entry>
1926 <entry>-</entry>
1927 <entry>-</entry>
1928 <entry>-</entry>
1929 <entry>-</entry>
1930 <entry>-</entry>
1931 <entry>-</entry>
1932 <entry>-</entry> 1770 <entry>-</entry>
1933 <entry>-</entry> 1771 <entry>-</entry>
1934 <entry>y<subscript>7</subscript></entry> 1772 <entry>y<subscript>7</subscript></entry>
@@ -1944,16 +1782,8 @@
1944 <entry></entry> 1782 <entry></entry>
1945 <entry></entry> 1783 <entry></entry>
1946 <entry></entry> 1784 <entry></entry>
1947 <entry>-</entry> 1785 &dash-ent-10;
1948 <entry>-</entry> 1786 &dash-ent-10;
1949 <entry>-</entry>
1950 <entry>-</entry>
1951 <entry>-</entry>
1952 <entry>-</entry>
1953 <entry>-</entry>
1954 <entry>-</entry>
1955 <entry>-</entry>
1956 <entry>-</entry>
1957 <entry>-</entry> 1787 <entry>-</entry>
1958 <entry>-</entry> 1788 <entry>-</entry>
1959 <entry>u<subscript>7</subscript></entry> 1789 <entry>u<subscript>7</subscript></entry>
@@ -1969,16 +1799,8 @@
1969 <entry>V4L2_MBUS_FMT_Y10_1X10</entry> 1799 <entry>V4L2_MBUS_FMT_Y10_1X10</entry>
1970 <entry>0x200a</entry> 1800 <entry>0x200a</entry>
1971 <entry></entry> 1801 <entry></entry>
1972 <entry>-</entry> 1802 &dash-ent-10;
1973 <entry>-</entry> 1803 &dash-ent-10;
1974 <entry>-</entry>
1975 <entry>-</entry>
1976 <entry>-</entry>
1977 <entry>-</entry>
1978 <entry>-</entry>
1979 <entry>-</entry>
1980 <entry>-</entry>
1981 <entry>-</entry>
1982 <entry>y<subscript>9</subscript></entry> 1804 <entry>y<subscript>9</subscript></entry>
1983 <entry>y<subscript>8</subscript></entry> 1805 <entry>y<subscript>8</subscript></entry>
1984 <entry>y<subscript>7</subscript></entry> 1806 <entry>y<subscript>7</subscript></entry>
@@ -1994,16 +1816,8 @@
1994 <entry>V4L2_MBUS_FMT_YUYV10_2X10</entry> 1816 <entry>V4L2_MBUS_FMT_YUYV10_2X10</entry>
1995 <entry>0x200b</entry> 1817 <entry>0x200b</entry>
1996 <entry></entry> 1818 <entry></entry>
1997 <entry>-</entry> 1819 &dash-ent-10;
1998 <entry>-</entry> 1820 &dash-ent-10;
1999 <entry>-</entry>
2000 <entry>-</entry>
2001 <entry>-</entry>
2002 <entry>-</entry>
2003 <entry>-</entry>
2004 <entry>-</entry>
2005 <entry>-</entry>
2006 <entry>-</entry>
2007 <entry>y<subscript>9</subscript></entry> 1821 <entry>y<subscript>9</subscript></entry>
2008 <entry>y<subscript>8</subscript></entry> 1822 <entry>y<subscript>8</subscript></entry>
2009 <entry>y<subscript>7</subscript></entry> 1823 <entry>y<subscript>7</subscript></entry>
@@ -2019,16 +1833,8 @@
2019 <entry></entry> 1833 <entry></entry>
2020 <entry></entry> 1834 <entry></entry>
2021 <entry></entry> 1835 <entry></entry>
2022 <entry>-</entry> 1836 &dash-ent-10;
2023 <entry>-</entry> 1837 &dash-ent-10;
2024 <entry>-</entry>
2025 <entry>-</entry>
2026 <entry>-</entry>
2027 <entry>-</entry>
2028 <entry>-</entry>
2029 <entry>-</entry>
2030 <entry>-</entry>
2031 <entry>-</entry>
2032 <entry>u<subscript>9</subscript></entry> 1838 <entry>u<subscript>9</subscript></entry>
2033 <entry>u<subscript>8</subscript></entry> 1839 <entry>u<subscript>8</subscript></entry>
2034 <entry>u<subscript>7</subscript></entry> 1840 <entry>u<subscript>7</subscript></entry>
@@ -2044,16 +1850,8 @@
2044 <entry></entry> 1850 <entry></entry>
2045 <entry></entry> 1851 <entry></entry>
2046 <entry></entry> 1852 <entry></entry>
2047 <entry>-</entry> 1853 &dash-ent-10;
2048 <entry>-</entry> 1854 &dash-ent-10;
2049 <entry>-</entry>
2050 <entry>-</entry>
2051 <entry>-</entry>
2052 <entry>-</entry>
2053 <entry>-</entry>
2054 <entry>-</entry>
2055 <entry>-</entry>
2056 <entry>-</entry>
2057 <entry>y<subscript>9</subscript></entry> 1855 <entry>y<subscript>9</subscript></entry>
2058 <entry>y<subscript>8</subscript></entry> 1856 <entry>y<subscript>8</subscript></entry>
2059 <entry>y<subscript>7</subscript></entry> 1857 <entry>y<subscript>7</subscript></entry>
@@ -2069,16 +1867,8 @@
2069 <entry></entry> 1867 <entry></entry>
2070 <entry></entry> 1868 <entry></entry>
2071 <entry></entry> 1869 <entry></entry>
2072 <entry>-</entry> 1870 &dash-ent-10;
2073 <entry>-</entry> 1871 &dash-ent-10;
2074 <entry>-</entry>
2075 <entry>-</entry>
2076 <entry>-</entry>
2077 <entry>-</entry>
2078 <entry>-</entry>
2079 <entry>-</entry>
2080 <entry>-</entry>
2081 <entry>-</entry>
2082 <entry>v<subscript>9</subscript></entry> 1872 <entry>v<subscript>9</subscript></entry>
2083 <entry>v<subscript>8</subscript></entry> 1873 <entry>v<subscript>8</subscript></entry>
2084 <entry>v<subscript>7</subscript></entry> 1874 <entry>v<subscript>7</subscript></entry>
@@ -2094,16 +1884,8 @@
2094 <entry>V4L2_MBUS_FMT_YVYU10_2X10</entry> 1884 <entry>V4L2_MBUS_FMT_YVYU10_2X10</entry>
2095 <entry>0x200c</entry> 1885 <entry>0x200c</entry>
2096 <entry></entry> 1886 <entry></entry>
2097 <entry>-</entry> 1887 &dash-ent-10;
2098 <entry>-</entry> 1888 &dash-ent-10;
2099 <entry>-</entry>
2100 <entry>-</entry>
2101 <entry>-</entry>
2102 <entry>-</entry>
2103 <entry>-</entry>
2104 <entry>-</entry>
2105 <entry>-</entry>
2106 <entry>-</entry>
2107 <entry>y<subscript>9</subscript></entry> 1889 <entry>y<subscript>9</subscript></entry>
2108 <entry>y<subscript>8</subscript></entry> 1890 <entry>y<subscript>8</subscript></entry>
2109 <entry>y<subscript>7</subscript></entry> 1891 <entry>y<subscript>7</subscript></entry>
@@ -2119,16 +1901,8 @@
2119 <entry></entry> 1901 <entry></entry>
2120 <entry></entry> 1902 <entry></entry>
2121 <entry></entry> 1903 <entry></entry>
2122 <entry>-</entry> 1904 &dash-ent-10;
2123 <entry>-</entry> 1905 &dash-ent-10;
2124 <entry>-</entry>
2125 <entry>-</entry>
2126 <entry>-</entry>
2127 <entry>-</entry>
2128 <entry>-</entry>
2129 <entry>-</entry>
2130 <entry>-</entry>
2131 <entry>-</entry>
2132 <entry>v<subscript>9</subscript></entry> 1906 <entry>v<subscript>9</subscript></entry>
2133 <entry>v<subscript>8</subscript></entry> 1907 <entry>v<subscript>8</subscript></entry>
2134 <entry>v<subscript>7</subscript></entry> 1908 <entry>v<subscript>7</subscript></entry>
@@ -2144,16 +1918,8 @@
2144 <entry></entry> 1918 <entry></entry>
2145 <entry></entry> 1919 <entry></entry>
2146 <entry></entry> 1920 <entry></entry>
2147 <entry>-</entry> 1921 &dash-ent-10;
2148 <entry>-</entry> 1922 &dash-ent-10;
2149 <entry>-</entry>
2150 <entry>-</entry>
2151 <entry>-</entry>
2152 <entry>-</entry>
2153 <entry>-</entry>
2154 <entry>-</entry>
2155 <entry>-</entry>
2156 <entry>-</entry>
2157 <entry>y<subscript>9</subscript></entry> 1923 <entry>y<subscript>9</subscript></entry>
2158 <entry>y<subscript>8</subscript></entry> 1924 <entry>y<subscript>8</subscript></entry>
2159 <entry>y<subscript>7</subscript></entry> 1925 <entry>y<subscript>7</subscript></entry>
@@ -2169,16 +1935,8 @@
2169 <entry></entry> 1935 <entry></entry>
2170 <entry></entry> 1936 <entry></entry>
2171 <entry></entry> 1937 <entry></entry>
2172 <entry>-</entry> 1938 &dash-ent-10;
2173 <entry>-</entry> 1939 &dash-ent-10;
2174 <entry>-</entry>
2175 <entry>-</entry>
2176 <entry>-</entry>
2177 <entry>-</entry>
2178 <entry>-</entry>
2179 <entry>-</entry>
2180 <entry>-</entry>
2181 <entry>-</entry>
2182 <entry>u<subscript>9</subscript></entry> 1940 <entry>u<subscript>9</subscript></entry>
2183 <entry>u<subscript>8</subscript></entry> 1941 <entry>u<subscript>8</subscript></entry>
2184 <entry>u<subscript>7</subscript></entry> 1942 <entry>u<subscript>7</subscript></entry>
@@ -2194,6 +1952,7 @@
2194 <entry>V4L2_MBUS_FMT_Y12_1X12</entry> 1952 <entry>V4L2_MBUS_FMT_Y12_1X12</entry>
2195 <entry>0x2013</entry> 1953 <entry>0x2013</entry>
2196 <entry></entry> 1954 <entry></entry>
1955 &dash-ent-10;
2197 <entry>-</entry> 1956 <entry>-</entry>
2198 <entry>-</entry> 1957 <entry>-</entry>
2199 <entry>-</entry> 1958 <entry>-</entry>
@@ -2219,6 +1978,7 @@
2219 <entry>V4L2_MBUS_FMT_UYVY8_1X16</entry> 1978 <entry>V4L2_MBUS_FMT_UYVY8_1X16</entry>
2220 <entry>0x200f</entry> 1979 <entry>0x200f</entry>
2221 <entry></entry> 1980 <entry></entry>
1981 &dash-ent-10;
2222 <entry>-</entry> 1982 <entry>-</entry>
2223 <entry>-</entry> 1983 <entry>-</entry>
2224 <entry>-</entry> 1984 <entry>-</entry>
@@ -2244,6 +2004,7 @@
2244 <entry></entry> 2004 <entry></entry>
2245 <entry></entry> 2005 <entry></entry>
2246 <entry></entry> 2006 <entry></entry>
2007 &dash-ent-10;
2247 <entry>-</entry> 2008 <entry>-</entry>
2248 <entry>-</entry> 2009 <entry>-</entry>
2249 <entry>-</entry> 2010 <entry>-</entry>
@@ -2269,6 +2030,7 @@
2269 <entry>V4L2_MBUS_FMT_VYUY8_1X16</entry> 2030 <entry>V4L2_MBUS_FMT_VYUY8_1X16</entry>
2270 <entry>0x2010</entry> 2031 <entry>0x2010</entry>
2271 <entry></entry> 2032 <entry></entry>
2033 &dash-ent-10;
2272 <entry>-</entry> 2034 <entry>-</entry>
2273 <entry>-</entry> 2035 <entry>-</entry>
2274 <entry>-</entry> 2036 <entry>-</entry>
@@ -2294,6 +2056,7 @@
2294 <entry></entry> 2056 <entry></entry>
2295 <entry></entry> 2057 <entry></entry>
2296 <entry></entry> 2058 <entry></entry>
2059 &dash-ent-10;
2297 <entry>-</entry> 2060 <entry>-</entry>
2298 <entry>-</entry> 2061 <entry>-</entry>
2299 <entry>-</entry> 2062 <entry>-</entry>
@@ -2319,6 +2082,7 @@
2319 <entry>V4L2_MBUS_FMT_YUYV8_1X16</entry> 2082 <entry>V4L2_MBUS_FMT_YUYV8_1X16</entry>
2320 <entry>0x2011</entry> 2083 <entry>0x2011</entry>
2321 <entry></entry> 2084 <entry></entry>
2085 &dash-ent-10;
2322 <entry>-</entry> 2086 <entry>-</entry>
2323 <entry>-</entry> 2087 <entry>-</entry>
2324 <entry>-</entry> 2088 <entry>-</entry>
@@ -2344,6 +2108,7 @@
2344 <entry></entry> 2108 <entry></entry>
2345 <entry></entry> 2109 <entry></entry>
2346 <entry></entry> 2110 <entry></entry>
2111 &dash-ent-10;
2347 <entry>-</entry> 2112 <entry>-</entry>
2348 <entry>-</entry> 2113 <entry>-</entry>
2349 <entry>-</entry> 2114 <entry>-</entry>
@@ -2369,6 +2134,7 @@
2369 <entry>V4L2_MBUS_FMT_YVYU8_1X16</entry> 2134 <entry>V4L2_MBUS_FMT_YVYU8_1X16</entry>
2370 <entry>0x2012</entry> 2135 <entry>0x2012</entry>
2371 <entry></entry> 2136 <entry></entry>
2137 &dash-ent-10;
2372 <entry>-</entry> 2138 <entry>-</entry>
2373 <entry>-</entry> 2139 <entry>-</entry>
2374 <entry>-</entry> 2140 <entry>-</entry>
@@ -2394,6 +2160,57 @@
2394 <entry></entry> 2160 <entry></entry>
2395 <entry></entry> 2161 <entry></entry>
2396 <entry></entry> 2162 <entry></entry>
2163 &dash-ent-10;
2164 <entry>-</entry>
2165 <entry>-</entry>
2166 <entry>-</entry>
2167 <entry>-</entry>
2168 <entry>y<subscript>7</subscript></entry>
2169 <entry>y<subscript>6</subscript></entry>
2170 <entry>y<subscript>5</subscript></entry>
2171 <entry>y<subscript>4</subscript></entry>
2172 <entry>y<subscript>3</subscript></entry>
2173 <entry>y<subscript>2</subscript></entry>
2174 <entry>y<subscript>1</subscript></entry>
2175 <entry>y<subscript>0</subscript></entry>
2176 <entry>u<subscript>7</subscript></entry>
2177 <entry>u<subscript>6</subscript></entry>
2178 <entry>u<subscript>5</subscript></entry>
2179 <entry>u<subscript>4</subscript></entry>
2180 <entry>u<subscript>3</subscript></entry>
2181 <entry>u<subscript>2</subscript></entry>
2182 <entry>u<subscript>1</subscript></entry>
2183 <entry>u<subscript>0</subscript></entry>
2184 </row>
2185 <row id="V4L2-MBUS-FMT-YDYUYDYV8-1X16">
2186 <entry>V4L2_MBUS_FMT_YDYUYDYV8_1X16</entry>
2187 <entry>0x2014</entry>
2188 <entry></entry>
2189 <entry>-</entry>
2190 <entry>-</entry>
2191 <entry>-</entry>
2192 <entry>-</entry>
2193 <entry>y<subscript>7</subscript></entry>
2194 <entry>y<subscript>6</subscript></entry>
2195 <entry>y<subscript>5</subscript></entry>
2196 <entry>y<subscript>4</subscript></entry>
2197 <entry>y<subscript>3</subscript></entry>
2198 <entry>y<subscript>2</subscript></entry>
2199 <entry>y<subscript>1</subscript></entry>
2200 <entry>y<subscript>0</subscript></entry>
2201 <entry>d</entry>
2202 <entry>d</entry>
2203 <entry>d</entry>
2204 <entry>d</entry>
2205 <entry>d</entry>
2206 <entry>d</entry>
2207 <entry>d</entry>
2208 <entry>d</entry>
2209 </row>
2210 <row>
2211 <entry></entry>
2212 <entry></entry>
2213 <entry></entry>
2397 <entry>-</entry> 2214 <entry>-</entry>
2398 <entry>-</entry> 2215 <entry>-</entry>
2399 <entry>-</entry> 2216 <entry>-</entry>
@@ -2415,10 +2232,61 @@
2415 <entry>u<subscript>1</subscript></entry> 2232 <entry>u<subscript>1</subscript></entry>
2416 <entry>u<subscript>0</subscript></entry> 2233 <entry>u<subscript>0</subscript></entry>
2417 </row> 2234 </row>
2235 <row>
2236 <entry></entry>
2237 <entry></entry>
2238 <entry></entry>
2239 <entry>-</entry>
2240 <entry>-</entry>
2241 <entry>-</entry>
2242 <entry>-</entry>
2243 <entry>y<subscript>7</subscript></entry>
2244 <entry>y<subscript>6</subscript></entry>
2245 <entry>y<subscript>5</subscript></entry>
2246 <entry>y<subscript>4</subscript></entry>
2247 <entry>y<subscript>3</subscript></entry>
2248 <entry>y<subscript>2</subscript></entry>
2249 <entry>y<subscript>1</subscript></entry>
2250 <entry>y<subscript>0</subscript></entry>
2251 <entry>d</entry>
2252 <entry>d</entry>
2253 <entry>d</entry>
2254 <entry>d</entry>
2255 <entry>d</entry>
2256 <entry>d</entry>
2257 <entry>d</entry>
2258 <entry>d</entry>
2259 </row>
2260 <row>
2261 <entry></entry>
2262 <entry></entry>
2263 <entry></entry>
2264 <entry>-</entry>
2265 <entry>-</entry>
2266 <entry>-</entry>
2267 <entry>-</entry>
2268 <entry>y<subscript>7</subscript></entry>
2269 <entry>y<subscript>6</subscript></entry>
2270 <entry>y<subscript>5</subscript></entry>
2271 <entry>y<subscript>4</subscript></entry>
2272 <entry>y<subscript>3</subscript></entry>
2273 <entry>y<subscript>2</subscript></entry>
2274 <entry>y<subscript>1</subscript></entry>
2275 <entry>y<subscript>0</subscript></entry>
2276 <entry>v<subscript>7</subscript></entry>
2277 <entry>v<subscript>6</subscript></entry>
2278 <entry>v<subscript>5</subscript></entry>
2279 <entry>v<subscript>4</subscript></entry>
2280 <entry>v<subscript>3</subscript></entry>
2281 <entry>v<subscript>2</subscript></entry>
2282 <entry>v<subscript>1</subscript></entry>
2283 <entry>v<subscript>0</subscript></entry>
2284 </row>
2418 <row id="V4L2-MBUS-FMT-YUYV10-1X20"> 2285 <row id="V4L2-MBUS-FMT-YUYV10-1X20">
2419 <entry>V4L2_MBUS_FMT_YUYV10_1X20</entry> 2286 <entry>V4L2_MBUS_FMT_YUYV10_1X20</entry>
2420 <entry>0x200d</entry> 2287 <entry>0x200d</entry>
2421 <entry></entry> 2288 <entry></entry>
2289 &dash-ent-10;
2422 <entry>y<subscript>9</subscript></entry> 2290 <entry>y<subscript>9</subscript></entry>
2423 <entry>y<subscript>8</subscript></entry> 2291 <entry>y<subscript>8</subscript></entry>
2424 <entry>y<subscript>7</subscript></entry> 2292 <entry>y<subscript>7</subscript></entry>
@@ -2444,6 +2312,7 @@
2444 <entry></entry> 2312 <entry></entry>
2445 <entry></entry> 2313 <entry></entry>
2446 <entry></entry> 2314 <entry></entry>
2315 &dash-ent-10;
2447 <entry>y<subscript>9</subscript></entry> 2316 <entry>y<subscript>9</subscript></entry>
2448 <entry>y<subscript>8</subscript></entry> 2317 <entry>y<subscript>8</subscript></entry>
2449 <entry>y<subscript>7</subscript></entry> 2318 <entry>y<subscript>7</subscript></entry>
@@ -2469,6 +2338,7 @@
2469 <entry>V4L2_MBUS_FMT_YVYU10_1X20</entry> 2338 <entry>V4L2_MBUS_FMT_YVYU10_1X20</entry>
2470 <entry>0x200e</entry> 2339 <entry>0x200e</entry>
2471 <entry></entry> 2340 <entry></entry>
2341 &dash-ent-10;
2472 <entry>y<subscript>9</subscript></entry> 2342 <entry>y<subscript>9</subscript></entry>
2473 <entry>y<subscript>8</subscript></entry> 2343 <entry>y<subscript>8</subscript></entry>
2474 <entry>y<subscript>7</subscript></entry> 2344 <entry>y<subscript>7</subscript></entry>
@@ -2494,6 +2364,7 @@
2494 <entry></entry> 2364 <entry></entry>
2495 <entry></entry> 2365 <entry></entry>
2496 <entry></entry> 2366 <entry></entry>
2367 &dash-ent-10;
2497 <entry>y<subscript>9</subscript></entry> 2368 <entry>y<subscript>9</subscript></entry>
2498 <entry>y<subscript>8</subscript></entry> 2369 <entry>y<subscript>8</subscript></entry>
2499 <entry>y<subscript>7</subscript></entry> 2370 <entry>y<subscript>7</subscript></entry>
@@ -2515,6 +2386,41 @@
2515 <entry>u<subscript>1</subscript></entry> 2386 <entry>u<subscript>1</subscript></entry>
2516 <entry>u<subscript>0</subscript></entry> 2387 <entry>u<subscript>0</subscript></entry>
2517 </row> 2388 </row>
2389 <row id="V4L2-MBUS-FMT-YUV10-1X30">
2390 <entry>V4L2_MBUS_FMT_YUV10_1X30</entry>
2391 <entry>0x2014</entry>
2392 <entry></entry>
2393 <entry>y<subscript>9</subscript></entry>
2394 <entry>y<subscript>8</subscript></entry>
2395 <entry>y<subscript>7</subscript></entry>
2396 <entry>y<subscript>6</subscript></entry>
2397 <entry>y<subscript>5</subscript></entry>
2398 <entry>y<subscript>4</subscript></entry>
2399 <entry>y<subscript>3</subscript></entry>
2400 <entry>y<subscript>2</subscript></entry>
2401 <entry>y<subscript>1</subscript></entry>
2402 <entry>y<subscript>0</subscript></entry>
2403 <entry>u<subscript>9</subscript></entry>
2404 <entry>u<subscript>8</subscript></entry>
2405 <entry>u<subscript>7</subscript></entry>
2406 <entry>u<subscript>6</subscript></entry>
2407 <entry>u<subscript>5</subscript></entry>
2408 <entry>u<subscript>4</subscript></entry>
2409 <entry>u<subscript>3</subscript></entry>
2410 <entry>u<subscript>2</subscript></entry>
2411 <entry>u<subscript>1</subscript></entry>
2412 <entry>u<subscript>0</subscript></entry>
2413 <entry>v<subscript>9</subscript></entry>
2414 <entry>v<subscript>8</subscript></entry>
2415 <entry>v<subscript>7</subscript></entry>
2416 <entry>v<subscript>6</subscript></entry>
2417 <entry>v<subscript>5</subscript></entry>
2418 <entry>v<subscript>4</subscript></entry>
2419 <entry>v<subscript>3</subscript></entry>
2420 <entry>v<subscript>2</subscript></entry>
2421 <entry>v<subscript>1</subscript></entry>
2422 <entry>v<subscript>0</subscript></entry>
2423 </row>
2518 </tbody> 2424 </tbody>
2519 </tgroup> 2425 </tgroup>
2520 </table> 2426 </table>
diff --git a/Documentation/DocBook/media/v4l/v4l2.xml b/Documentation/DocBook/media/v4l/v4l2.xml
index 4d110b1ad3e9..a3cce18384e9 100644
--- a/Documentation/DocBook/media/v4l/v4l2.xml
+++ b/Documentation/DocBook/media/v4l/v4l2.xml
@@ -140,6 +140,16 @@ structs, ioctls) must be noted in more detail in the history chapter
140applications. --> 140applications. -->
141 141
142 <revision> 142 <revision>
143 <revnumber>3.9</revnumber>
144 <date>2012-12-03</date>
145 <authorinitials>sa, sn</authorinitials>
146 <revremark>Added timestamp types to v4l2_buffer.
147 Added <constant>V4L2_EVENT_CTRL_CH_RANGE</constant> control
148 event changes flag, see <xref linkend="changes-flags"/>.
149 </revremark>
150 </revision>
151
152 <revision>
143 <revnumber>3.6</revnumber> 153 <revnumber>3.6</revnumber>
144 <date>2012-07-02</date> 154 <date>2012-07-02</date>
145 <authorinitials>hv</authorinitials> 155 <authorinitials>hv</authorinitials>
@@ -472,7 +482,7 @@ and discussions on the V4L mailing list.</revremark>
472</partinfo> 482</partinfo>
473 483
474<title>Video for Linux Two API Specification</title> 484<title>Video for Linux Two API Specification</title>
475 <subtitle>Revision 3.6</subtitle> 485 <subtitle>Revision 3.9</subtitle>
476 486
477 <chapter id="common"> 487 <chapter id="common">
478 &sub-common; 488 &sub-common;
diff --git a/Documentation/DocBook/media/v4l/vidioc-dqevent.xml b/Documentation/DocBook/media/v4l/vidioc-dqevent.xml
index 98a856f9ec30..89891adb928a 100644
--- a/Documentation/DocBook/media/v4l/vidioc-dqevent.xml
+++ b/Documentation/DocBook/media/v4l/vidioc-dqevent.xml
@@ -261,6 +261,12 @@
261 <entry>This control event was triggered because the control flags 261 <entry>This control event was triggered because the control flags
262 changed.</entry> 262 changed.</entry>
263 </row> 263 </row>
264 <row>
265 <entry><constant>V4L2_EVENT_CTRL_CH_RANGE</constant></entry>
266 <entry>0x0004</entry>
267 <entry>This control event was triggered because the minimum,
268 maximum, step or the default value of the control changed.</entry>
269 </row>
264 </tbody> 270 </tbody>
265 </tgroup> 271 </tgroup>
266 </table> 272 </table>
diff --git a/Documentation/DocBook/media/v4l/vidioc-expbuf.xml b/Documentation/DocBook/media/v4l/vidioc-expbuf.xml
index 72dfbd20a802..e287c8fc803b 100644
--- a/Documentation/DocBook/media/v4l/vidioc-expbuf.xml
+++ b/Documentation/DocBook/media/v4l/vidioc-expbuf.xml
@@ -83,15 +83,14 @@ descriptor. The application may pass it to other DMABUF-aware devices. Refer to
83<link linkend="dmabuf">DMABUF importing</link> for details about importing 83<link linkend="dmabuf">DMABUF importing</link> for details about importing
84DMABUF files into V4L2 nodes. It is recommended to close a DMABUF file when it 84DMABUF files into V4L2 nodes. It is recommended to close a DMABUF file when it
85is no longer used to allow the associated memory to be reclaimed. </para> 85is no longer used to allow the associated memory to be reclaimed. </para>
86
87 </refsect1> 86 </refsect1>
87
88 <refsect1> 88 <refsect1>
89 <section> 89 <title>Examples</title>
90 <title>Examples</title>
91 90
92 <example> 91 <example>
93 <title>Exporting a buffer.</title> 92 <title>Exporting a buffer.</title>
94 <programlisting> 93 <programlisting>
95int buffer_export(int v4lfd, &v4l2-buf-type; bt, int index, int *dmafd) 94int buffer_export(int v4lfd, &v4l2-buf-type; bt, int index, int *dmafd)
96{ 95{
97 &v4l2-exportbuffer; expbuf; 96 &v4l2-exportbuffer; expbuf;
@@ -108,12 +107,12 @@ int buffer_export(int v4lfd, &v4l2-buf-type; bt, int index, int *dmafd)
108 107
109 return 0; 108 return 0;
110} 109}
111 </programlisting> 110 </programlisting>
112 </example> 111 </example>
113 112
114 <example> 113 <example>
115 <title>Exporting a buffer using the multi-planar API.</title> 114 <title>Exporting a buffer using the multi-planar API.</title>
116 <programlisting> 115 <programlisting>
117int buffer_export_mp(int v4lfd, &v4l2-buf-type; bt, int index, 116int buffer_export_mp(int v4lfd, &v4l2-buf-type; bt, int index,
118 int dmafd[], int n_planes) 117 int dmafd[], int n_planes)
119{ 118{
@@ -137,12 +136,9 @@ int buffer_export_mp(int v4lfd, &v4l2-buf-type; bt, int index,
137 136
138 return 0; 137 return 0;
139} 138}
140 </programlisting> 139 </programlisting>
141 </example> 140 </example>
142 </section>
143 </refsect1>
144 141
145 <refsect1>
146 <table pgwide="1" frame="none" id="v4l2-exportbuffer"> 142 <table pgwide="1" frame="none" id="v4l2-exportbuffer">
147 <title>struct <structname>v4l2_exportbuffer</structname></title> 143 <title>struct <structname>v4l2_exportbuffer</structname></title>
148 <tgroup cols="3"> 144 <tgroup cols="3">
diff --git a/Documentation/DocBook/media/v4l/vidioc-g-ctrl.xml b/Documentation/DocBook/media/v4l/vidioc-g-ctrl.xml
index 12b1d0503e26..ee2820d6ca66 100644
--- a/Documentation/DocBook/media/v4l/vidioc-g-ctrl.xml
+++ b/Documentation/DocBook/media/v4l/vidioc-g-ctrl.xml
@@ -64,7 +64,9 @@ return an &EINVAL;. When the <structfield>value</structfield> is out
64of bounds drivers can choose to take the closest valid value or return 64of bounds drivers can choose to take the closest valid value or return
65an &ERANGE;, whatever seems more appropriate. However, 65an &ERANGE;, whatever seems more appropriate. However,
66<constant>VIDIOC_S_CTRL</constant> is a write-only ioctl, it does not 66<constant>VIDIOC_S_CTRL</constant> is a write-only ioctl, it does not
67return the actual new value.</para> 67return the actual new value. If the <structfield>value</structfield>
68is inappropriate for the control (e.g. if it refers to an unsupported
69menu index of a menu control), then &EINVAL; is returned as well.</para>
68 70
69 <para>These ioctls work only with user controls. For other 71 <para>These ioctls work only with user controls. For other
70control classes the &VIDIOC-G-EXT-CTRLS;, &VIDIOC-S-EXT-CTRLS; or 72control classes the &VIDIOC-G-EXT-CTRLS;, &VIDIOC-S-EXT-CTRLS; or
@@ -99,7 +101,9 @@ application.</entry>
99 <term><errorcode>EINVAL</errorcode></term> 101 <term><errorcode>EINVAL</errorcode></term>
100 <listitem> 102 <listitem>
101 <para>The &v4l2-control; <structfield>id</structfield> is 103 <para>The &v4l2-control; <structfield>id</structfield> is
102invalid.</para> 104invalid or the <structfield>value</structfield> is inappropriate for
105the given control (i.e. if a menu item is selected that is not supported
106by the driver according to &VIDIOC-QUERYMENU;).</para>
103 </listitem> 107 </listitem>
104 </varlistentry> 108 </varlistentry>
105 <varlistentry> 109 <varlistentry>
diff --git a/Documentation/DocBook/media/v4l/vidioc-g-ext-ctrls.xml b/Documentation/DocBook/media/v4l/vidioc-g-ext-ctrls.xml
index 0a4b90fcf2da..4e16112df992 100644
--- a/Documentation/DocBook/media/v4l/vidioc-g-ext-ctrls.xml
+++ b/Documentation/DocBook/media/v4l/vidioc-g-ext-ctrls.xml
@@ -106,7 +106,9 @@ value or if an error is returned.</para>
106&EINVAL;. When the value is out of bounds drivers can choose to take 106&EINVAL;. When the value is out of bounds drivers can choose to take
107the closest valid value or return an &ERANGE;, whatever seems more 107the closest valid value or return an &ERANGE;, whatever seems more
108appropriate. In the first case the new value is set in 108appropriate. In the first case the new value is set in
109&v4l2-ext-control;.</para> 109&v4l2-ext-control;. If the new control value is inappropriate (e.g. the
110given menu index is not supported by the menu control), then this will
111also result in an &EINVAL; error.</para>
110 112
111 <para>The driver will only set/get these controls if all control 113 <para>The driver will only set/get these controls if all control
112values are correct. This prevents the situation where only some of the 114values are correct. This prevents the situation where only some of the
@@ -199,13 +201,46 @@ also be zero.</entry>
199 <row> 201 <row>
200 <entry>__u32</entry> 202 <entry>__u32</entry>
201 <entry><structfield>error_idx</structfield></entry> 203 <entry><structfield>error_idx</structfield></entry>
202 <entry>Set by the driver in case of an error. If it is equal 204 <entry><para>Set by the driver in case of an error. If the error is
203to <structfield>count</structfield>, then no actual changes were made to 205associated with a particular control, then <structfield>error_idx</structfield>
204controls. In other words, the error was not associated with setting a particular 206is set to the index of that control. If the error is not related to a specific
205control. If it is another value, then only the controls up to <structfield>error_idx-1</structfield> 207control, or the validation step failed (see below), then
206were modified and control <structfield>error_idx</structfield> is the one that 208<structfield>error_idx</structfield> is set to <structfield>count</structfield>.
207caused the error. The <structfield>error_idx</structfield> value is undefined 209The value is undefined if the ioctl returned 0 (success).</para>
208if the ioctl returned 0 (success).</entry> 210
211<para>Before controls are read from/written to hardware a validation step
212takes place: this checks if all controls in the list are valid controls,
213if no attempt is made to write to a read-only control or read from a write-only
214control, and any other up-front checks that can be done without accessing the
215hardware. The exact validations done during this step are driver dependent
216since some checks might require hardware access for some devices, thus making
217it impossible to do those checks up-front. However, drivers should make a
218best-effort to do as many up-front checks as possible.</para>
219
220<para>This check is done to avoid leaving the hardware in an inconsistent state due
221to easy-to-avoid problems. But it leads to another problem: the application needs to
222know whether an error came from the validation step (meaning that the hardware
223was not touched) or from an error during the actual reading from/writing to hardware.</para>
224
225<para>The, in hindsight quite poor, solution for that is to set <structfield>error_idx</structfield>
226to <structfield>count</structfield> if the validation failed. This has the
227unfortunate side-effect that it is not possible to see which control failed the
228validation. If the validation was successful and the error happened while
229accessing the hardware, then <structfield>error_idx</structfield> is less than
230<structfield>count</structfield> and only the controls up to
231<structfield>error_idx-1</structfield> were read or written correctly, and the
232state of the remaining controls is undefined.</para>
233
234<para>Since <constant>VIDIOC_TRY_EXT_CTRLS</constant> does not access hardware
235there is also no need to handle the validation step in this special way,
236so <structfield>error_idx</structfield> will just be set to the control that
237failed the validation step instead of to <structfield>count</structfield>.
238This means that if <constant>VIDIOC_S_EXT_CTRLS</constant> fails with
239<structfield>error_idx</structfield> set to <structfield>count</structfield>,
240then you can call <constant>VIDIOC_TRY_EXT_CTRLS</constant> to try to discover
241the actual control that failed the validation step. Unfortunately, there
242is no <constant>TRY</constant> equivalent for <constant>VIDIOC_G_EXT_CTRLS</constant>.
243</para></entry>
209 </row> 244 </row>
210 <row> 245 <row>
211 <entry>__u32</entry> 246 <entry>__u32</entry>
@@ -298,8 +333,10 @@ These controls are described in <xref
298 <term><errorcode>EINVAL</errorcode></term> 333 <term><errorcode>EINVAL</errorcode></term>
299 <listitem> 334 <listitem>
300 <para>The &v4l2-ext-control; <structfield>id</structfield> 335 <para>The &v4l2-ext-control; <structfield>id</structfield>
301is invalid or the &v4l2-ext-controls; 336is invalid, the &v4l2-ext-controls;
302<structfield>ctrl_class</structfield> is invalid. This error code is 337<structfield>ctrl_class</structfield> is invalid, or the &v4l2-ext-control;
338<structfield>value</structfield> was inappropriate (e.g. the given menu
339index is not supported by the driver). This error code is
303also returned by the <constant>VIDIOC_S_EXT_CTRLS</constant> and 340also returned by the <constant>VIDIOC_S_EXT_CTRLS</constant> and
304<constant>VIDIOC_TRY_EXT_CTRLS</constant> ioctls if two or more 341<constant>VIDIOC_TRY_EXT_CTRLS</constant> ioctls if two or more
305control values are in conflict.</para> 342control values are in conflict.</para>
diff --git a/Documentation/DocBook/media/v4l/vidioc-querycap.xml b/Documentation/DocBook/media/v4l/vidioc-querycap.xml
index 4c70215ae03f..d5a3c97b206a 100644
--- a/Documentation/DocBook/media/v4l/vidioc-querycap.xml
+++ b/Documentation/DocBook/media/v4l/vidioc-querycap.xml
@@ -76,7 +76,7 @@ make sure the strings are properly NUL-terminated.</para></entry>
76 <row> 76 <row>
77 <entry>__u8</entry> 77 <entry>__u8</entry>
78 <entry><structfield>card</structfield>[32]</entry> 78 <entry><structfield>card</structfield>[32]</entry>
79 <entry>Name of the device, a NUL-terminated ASCII string. 79 <entry>Name of the device, a NUL-terminated UTF-8 string.
80For example: "Yoyodyne TV/FM". One driver may support different brands 80For example: "Yoyodyne TV/FM". One driver may support different brands
81or models of video hardware. This information is intended for users, 81or models of video hardware. This information is intended for users,
82for example in a menu of available devices. Since multiple TV cards of 82for example in a menu of available devices. Since multiple TV cards of
diff --git a/Documentation/DocBook/media_api.tmpl b/Documentation/DocBook/media_api.tmpl
index f2413acfe241..1f6593deb995 100644
--- a/Documentation/DocBook/media_api.tmpl
+++ b/Documentation/DocBook/media_api.tmpl
@@ -22,6 +22,7 @@
22 22
23<!-- LinuxTV v4l-dvb repository. --> 23<!-- LinuxTV v4l-dvb repository. -->
24<!ENTITY v4l-dvb "<ulink url='http://linuxtv.org/repo/'>http://linuxtv.org/repo/</ulink>"> 24<!ENTITY v4l-dvb "<ulink url='http://linuxtv.org/repo/'>http://linuxtv.org/repo/</ulink>">
25<!ENTITY dash-ent-10 "<entry>-</entry><entry>-</entry><entry>-</entry><entry>-</entry><entry>-</entry><entry>-</entry><entry>-</entry><entry>-</entry><entry>-</entry><entry>-</entry>">
25]> 26]>
26 27
27<book id="media_api"> 28<book id="media_api">