aboutsummaryrefslogtreecommitdiffstats
path: root/Documentation
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2014-06-04 17:24:30 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2014-06-04 17:24:30 -0400
commitaaeb2554337217dfa4eac2fcc90da7be540b9a73 (patch)
treee453668c8e4253c1a86c8fbc3f92090e93f8336f /Documentation
parentd27050641e9bc056446deb0814e7ba1aa7911f5a (diff)
parenta2668e10d7246e782f7708dc47c00f035da23a81 (diff)
Merge branch 'v4l_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media into next
Pull media updates from Mauro Carvalho Chehab: "This contains: - a new frontend/tuner driver set for si2168 and sa2157 - Videobuf 2 core now supports DVB too - A new gspca sub-driver (dtcs033) - saa7134 is now converted to use videobuf2 - add support for 4K timings - several other driver fixes and improvements PS. This pull request is shorter than usual, partly because I have some other patches on topic branches that I'll be sending you later this week" * 'v4l_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media: (286 commits) [media] au0828-dvb: restore its permission to 644 [media] xc5000: delay tuner sleep to 5 seconds [media] xc5000: Don't use whitespace before tabs [media] xc5000: fix CamelCase [media] xc5000: Don't wrap msleep() [media] xc5000: get rid of positive error codes [media] au0828: reset streaming when a new frequency is set [media] au0828: Improve debug messages for urb_completion [media] au0828: Cancel stream-restart operation if frontend is disconnected [media] dib0700: fix RC support on Hauppauge Nova-TD [media] USB: as102_usb_drv.c: Remove useless return variables [media] v4l: Fix documentation of V4L2_PIX_FMT_H264_MVC and VP8 pixel formats [media] m5mols: Replace missing header [media] staging: lirc: Fix sparse warnings [media] fix mceusb endpoint type identification/handling [media] az6027: Added the PID for a new revision of the Elgato EyeTV Sat DVB-S Tuner [media] DocBook media: fix typo [media] adv7604: Add missing include to linux/types.h [media] v4l: Validate fields in the core code for subdev EDID ioctls [media] v4l: Add support for DV timings ioctls on subdev nodes ...
Diffstat (limited to 'Documentation')
-rw-r--r--Documentation/DocBook/media/v4l/io.xml15
-rw-r--r--Documentation/DocBook/media/v4l/media-ioc-enum-links.xml8
-rw-r--r--Documentation/DocBook/media/v4l/pixfmt.xml4
-rw-r--r--Documentation/DocBook/media/v4l/subdev-formats.xml760
-rw-r--r--Documentation/DocBook/media/v4l/vidioc-dqevent.xml33
-rw-r--r--Documentation/DocBook/media/v4l/vidioc-dv-timings-cap.xml27
-rw-r--r--Documentation/DocBook/media/v4l/vidioc-enum-dv-timings.xml30
-rw-r--r--Documentation/DocBook/media/v4l/vidioc-subscribe-event.xml20
-rw-r--r--Documentation/devicetree/bindings/media/s5p-mfc.txt3
-rw-r--r--Documentation/video4linux/CARDLIST.bttv1
-rw-r--r--Documentation/video4linux/CARDLIST.em28xx1
-rw-r--r--Documentation/video4linux/fimc.txt30
-rw-r--r--Documentation/video4linux/v4l2-pci-skeleton.c42
13 files changed, 909 insertions, 65 deletions
diff --git a/Documentation/DocBook/media/v4l/io.xml b/Documentation/DocBook/media/v4l/io.xml
index 97a69bf6f3eb..a086a5db7a18 100644
--- a/Documentation/DocBook/media/v4l/io.xml
+++ b/Documentation/DocBook/media/v4l/io.xml
@@ -125,7 +125,7 @@ location of the buffers in device memory can be determined with the
125<structfield>m.offset</structfield> and <structfield>length</structfield> 125<structfield>m.offset</structfield> and <structfield>length</structfield>
126returned in a &v4l2-buffer; are passed as sixth and second parameter to the 126returned in a &v4l2-buffer; are passed as sixth and second parameter to the
127<function>mmap()</function> function. When using the multi-planar API, 127<function>mmap()</function> function. When using the multi-planar API,
128struct &v4l2-buffer; contains an array of &v4l2-plane; structures, each 128&v4l2-buffer; contains an array of &v4l2-plane; structures, each
129containing its own <structfield>m.offset</structfield> and 129containing its own <structfield>m.offset</structfield> and
130<structfield>length</structfield>. When using the multi-planar API, every 130<structfield>length</structfield>. When using the multi-planar API, every
131plane of every buffer has to be mapped separately, so the number of 131plane of every buffer has to be mapped separately, so the number of
@@ -699,7 +699,12 @@ linkend="v4l2-buf-type" /></entry>
699buffer. It depends on the negotiated data format and may change with 699buffer. It depends on the negotiated data format and may change with
700each buffer for compressed variable size data like JPEG images. 700each buffer for compressed variable size data like JPEG images.
701Drivers must set this field when <structfield>type</structfield> 701Drivers must set this field when <structfield>type</structfield>
702refers to an input stream, applications when it refers to an output stream.</entry> 702refers to an input stream, applications when it refers to an output stream.
703If the application sets this to 0 for an output stream, then
704<structfield>bytesused</structfield> will be set to the size of the
705buffer (see the <structfield>length</structfield> field of this struct) by
706the driver. For multiplanar formats this field is ignored and the
707<structfield>planes</structfield> pointer is used instead.</entry>
703 </row> 708 </row>
704 <row> 709 <row>
705 <entry>__u32</entry> 710 <entry>__u32</entry>
@@ -861,7 +866,11 @@ should set this to 0.</entry>
861 <entry></entry> 866 <entry></entry>
862 <entry>The number of bytes occupied by data in the plane 867 <entry>The number of bytes occupied by data in the plane
863 (its payload). Drivers must set this field when <structfield>type</structfield> 868 (its payload). Drivers must set this field when <structfield>type</structfield>
864 refers to an input stream, applications when it refers to an output stream.</entry> 869 refers to an input stream, applications when it refers to an output stream.
870 If the application sets this to 0 for an output stream, then
871 <structfield>bytesused</structfield> will be set to the size of the
872 plane (see the <structfield>length</structfield> field of this struct)
873 by the driver.</entry>
865 </row> 874 </row>
866 <row> 875 <row>
867 <entry>__u32</entry> 876 <entry>__u32</entry>
diff --git a/Documentation/DocBook/media/v4l/media-ioc-enum-links.xml b/Documentation/DocBook/media/v4l/media-ioc-enum-links.xml
index cf8548556c7d..74fb394ec667 100644
--- a/Documentation/DocBook/media/v4l/media-ioc-enum-links.xml
+++ b/Documentation/DocBook/media/v4l/media-ioc-enum-links.xml
@@ -79,13 +79,13 @@
79 <entry>Entity id, set by the application.</entry> 79 <entry>Entity id, set by the application.</entry>
80 </row> 80 </row>
81 <row> 81 <row>
82 <entry>struct &media-pad-desc;</entry> 82 <entry>&media-pad-desc;</entry>
83 <entry>*<structfield>pads</structfield></entry> 83 <entry>*<structfield>pads</structfield></entry>
84 <entry>Pointer to a pads array allocated by the application. Ignored 84 <entry>Pointer to a pads array allocated by the application. Ignored
85 if NULL.</entry> 85 if NULL.</entry>
86 </row> 86 </row>
87 <row> 87 <row>
88 <entry>struct &media-link-desc;</entry> 88 <entry>&media-link-desc;</entry>
89 <entry>*<structfield>links</structfield></entry> 89 <entry>*<structfield>links</structfield></entry>
90 <entry>Pointer to a links array allocated by the application. Ignored 90 <entry>Pointer to a links array allocated by the application. Ignored
91 if NULL.</entry> 91 if NULL.</entry>
@@ -153,12 +153,12 @@
153 &cs-str; 153 &cs-str;
154 <tbody valign="top"> 154 <tbody valign="top">
155 <row> 155 <row>
156 <entry>struct &media-pad-desc;</entry> 156 <entry>&media-pad-desc;</entry>
157 <entry><structfield>source</structfield></entry> 157 <entry><structfield>source</structfield></entry>
158 <entry>Pad at the origin of this link.</entry> 158 <entry>Pad at the origin of this link.</entry>
159 </row> 159 </row>
160 <row> 160 <row>
161 <entry>struct &media-pad-desc;</entry> 161 <entry>&media-pad-desc;</entry>
162 <entry><structfield>sink</structfield></entry> 162 <entry><structfield>sink</structfield></entry>
163 <entry>Pad at the target of this link.</entry> 163 <entry>Pad at the target of this link.</entry>
164 </row> 164 </row>
diff --git a/Documentation/DocBook/media/v4l/pixfmt.xml b/Documentation/DocBook/media/v4l/pixfmt.xml
index ea514d6075c5..91dcbc84f3f8 100644
--- a/Documentation/DocBook/media/v4l/pixfmt.xml
+++ b/Documentation/DocBook/media/v4l/pixfmt.xml
@@ -772,7 +772,7 @@ extended control <constant>V4L2_CID_MPEG_STREAM_TYPE</constant>, see
772 </row> 772 </row>
773 <row id="V4L2-PIX-FMT-H264-MVC"> 773 <row id="V4L2-PIX-FMT-H264-MVC">
774 <entry><constant>V4L2_PIX_FMT_H264_MVC</constant></entry> 774 <entry><constant>V4L2_PIX_FMT_H264_MVC</constant></entry>
775 <entry>'MVC'</entry> 775 <entry>'M264'</entry>
776 <entry>H264 MVC video elementary stream.</entry> 776 <entry>H264 MVC video elementary stream.</entry>
777 </row> 777 </row>
778 <row id="V4L2-PIX-FMT-H263"> 778 <row id="V4L2-PIX-FMT-H263">
@@ -812,7 +812,7 @@ extended control <constant>V4L2_CID_MPEG_STREAM_TYPE</constant>, see
812 </row> 812 </row>
813 <row id="V4L2-PIX-FMT-VP8"> 813 <row id="V4L2-PIX-FMT-VP8">
814 <entry><constant>V4L2_PIX_FMT_VP8</constant></entry> 814 <entry><constant>V4L2_PIX_FMT_VP8</constant></entry>
815 <entry>'VP8'</entry> 815 <entry>'VP80'</entry>
816 <entry>VP8 video elementary stream.</entry> 816 <entry>VP8 video elementary stream.</entry>
817 </row> 817 </row>
818 </tbody> 818 </tbody>
diff --git a/Documentation/DocBook/media/v4l/subdev-formats.xml b/Documentation/DocBook/media/v4l/subdev-formats.xml
index 7331ce116f4c..b2d5a0363cba 100644
--- a/Documentation/DocBook/media/v4l/subdev-formats.xml
+++ b/Documentation/DocBook/media/v4l/subdev-formats.xml
@@ -1898,6 +1898,134 @@
1898 <entry>y<subscript>1</subscript></entry> 1898 <entry>y<subscript>1</subscript></entry>
1899 <entry>y<subscript>0</subscript></entry> 1899 <entry>y<subscript>0</subscript></entry>
1900 </row> 1900 </row>
1901 <row id="V4L2-MBUS-FMT-UYVY10-2X10">
1902 <entry>V4L2_MBUS_FMT_UYVY10_2X10</entry>
1903 <entry>0x2018</entry>
1904 <entry></entry>
1905 &dash-ent-22;
1906 <entry>u<subscript>9</subscript></entry>
1907 <entry>u<subscript>8</subscript></entry>
1908 <entry>u<subscript>7</subscript></entry>
1909 <entry>u<subscript>6</subscript></entry>
1910 <entry>u<subscript>5</subscript></entry>
1911 <entry>u<subscript>4</subscript></entry>
1912 <entry>u<subscript>3</subscript></entry>
1913 <entry>u<subscript>2</subscript></entry>
1914 <entry>u<subscript>1</subscript></entry>
1915 <entry>u<subscript>0</subscript></entry>
1916 </row>
1917 <row>
1918 <entry></entry>
1919 <entry></entry>
1920 <entry></entry>
1921 &dash-ent-22;
1922 <entry>y<subscript>9</subscript></entry>
1923 <entry>y<subscript>8</subscript></entry>
1924 <entry>y<subscript>7</subscript></entry>
1925 <entry>y<subscript>6</subscript></entry>
1926 <entry>y<subscript>5</subscript></entry>
1927 <entry>y<subscript>4</subscript></entry>
1928 <entry>y<subscript>3</subscript></entry>
1929 <entry>y<subscript>2</subscript></entry>
1930 <entry>y<subscript>1</subscript></entry>
1931 <entry>y<subscript>0</subscript></entry>
1932 </row>
1933 <row>
1934 <entry></entry>
1935 <entry></entry>
1936 <entry></entry>
1937 &dash-ent-22;
1938 <entry>v<subscript>9</subscript></entry>
1939 <entry>v<subscript>8</subscript></entry>
1940 <entry>v<subscript>7</subscript></entry>
1941 <entry>v<subscript>6</subscript></entry>
1942 <entry>v<subscript>5</subscript></entry>
1943 <entry>v<subscript>4</subscript></entry>
1944 <entry>v<subscript>3</subscript></entry>
1945 <entry>v<subscript>2</subscript></entry>
1946 <entry>v<subscript>1</subscript></entry>
1947 <entry>v<subscript>0</subscript></entry>
1948 </row>
1949 <row>
1950 <entry></entry>
1951 <entry></entry>
1952 <entry></entry>
1953 &dash-ent-22;
1954 <entry>y<subscript>9</subscript></entry>
1955 <entry>y<subscript>8</subscript></entry>
1956 <entry>y<subscript>7</subscript></entry>
1957 <entry>y<subscript>6</subscript></entry>
1958 <entry>y<subscript>5</subscript></entry>
1959 <entry>y<subscript>4</subscript></entry>
1960 <entry>y<subscript>3</subscript></entry>
1961 <entry>y<subscript>2</subscript></entry>
1962 <entry>y<subscript>1</subscript></entry>
1963 <entry>y<subscript>0</subscript></entry>
1964 </row>
1965 <row id="V4L2-MBUS-FMT-VYUY10-2X10">
1966 <entry>V4L2_MBUS_FMT_VYUY10_2X10</entry>
1967 <entry>0x2019</entry>
1968 <entry></entry>
1969 &dash-ent-22;
1970 <entry>v<subscript>9</subscript></entry>
1971 <entry>v<subscript>8</subscript></entry>
1972 <entry>v<subscript>7</subscript></entry>
1973 <entry>v<subscript>6</subscript></entry>
1974 <entry>v<subscript>5</subscript></entry>
1975 <entry>v<subscript>4</subscript></entry>
1976 <entry>v<subscript>3</subscript></entry>
1977 <entry>v<subscript>2</subscript></entry>
1978 <entry>v<subscript>1</subscript></entry>
1979 <entry>v<subscript>0</subscript></entry>
1980 </row>
1981 <row>
1982 <entry></entry>
1983 <entry></entry>
1984 <entry></entry>
1985 &dash-ent-22;
1986 <entry>y<subscript>9</subscript></entry>
1987 <entry>y<subscript>8</subscript></entry>
1988 <entry>y<subscript>7</subscript></entry>
1989 <entry>y<subscript>6</subscript></entry>
1990 <entry>y<subscript>5</subscript></entry>
1991 <entry>y<subscript>4</subscript></entry>
1992 <entry>y<subscript>3</subscript></entry>
1993 <entry>y<subscript>2</subscript></entry>
1994 <entry>y<subscript>1</subscript></entry>
1995 <entry>y<subscript>0</subscript></entry>
1996 </row>
1997 <row>
1998 <entry></entry>
1999 <entry></entry>
2000 <entry></entry>
2001 &dash-ent-22;
2002 <entry>u<subscript>9</subscript></entry>
2003 <entry>u<subscript>8</subscript></entry>
2004 <entry>u<subscript>7</subscript></entry>
2005 <entry>u<subscript>6</subscript></entry>
2006 <entry>u<subscript>5</subscript></entry>
2007 <entry>u<subscript>4</subscript></entry>
2008 <entry>u<subscript>3</subscript></entry>
2009 <entry>u<subscript>2</subscript></entry>
2010 <entry>u<subscript>1</subscript></entry>
2011 <entry>u<subscript>0</subscript></entry>
2012 </row>
2013 <row>
2014 <entry></entry>
2015 <entry></entry>
2016 <entry></entry>
2017 &dash-ent-22;
2018 <entry>y<subscript>9</subscript></entry>
2019 <entry>y<subscript>8</subscript></entry>
2020 <entry>y<subscript>7</subscript></entry>
2021 <entry>y<subscript>6</subscript></entry>
2022 <entry>y<subscript>5</subscript></entry>
2023 <entry>y<subscript>4</subscript></entry>
2024 <entry>y<subscript>3</subscript></entry>
2025 <entry>y<subscript>2</subscript></entry>
2026 <entry>y<subscript>1</subscript></entry>
2027 <entry>y<subscript>0</subscript></entry>
2028 </row>
1901 <row id="V4L2-MBUS-FMT-YUYV10-2X10"> 2029 <row id="V4L2-MBUS-FMT-YUYV10-2X10">
1902 <entry>V4L2_MBUS_FMT_YUYV10_2X10</entry> 2030 <entry>V4L2_MBUS_FMT_YUYV10_2X10</entry>
1903 <entry>0x200b</entry> 2031 <entry>0x200b</entry>
@@ -2308,6 +2436,110 @@
2308 <entry>v<subscript>1</subscript></entry> 2436 <entry>v<subscript>1</subscript></entry>
2309 <entry>v<subscript>0</subscript></entry> 2437 <entry>v<subscript>0</subscript></entry>
2310 </row> 2438 </row>
2439 <row id="V4L2-MBUS-FMT-UYVY10-1X20">
2440 <entry>V4L2_MBUS_FMT_UYVY10_1X20</entry>
2441 <entry>0x201a</entry>
2442 <entry></entry>
2443 &dash-ent-12;
2444 <entry>u<subscript>9</subscript></entry>
2445 <entry>u<subscript>8</subscript></entry>
2446 <entry>u<subscript>7</subscript></entry>
2447 <entry>u<subscript>6</subscript></entry>
2448 <entry>u<subscript>5</subscript></entry>
2449 <entry>u<subscript>4</subscript></entry>
2450 <entry>u<subscript>3</subscript></entry>
2451 <entry>u<subscript>2</subscript></entry>
2452 <entry>u<subscript>1</subscript></entry>
2453 <entry>u<subscript>0</subscript></entry>
2454 <entry>y<subscript>9</subscript></entry>
2455 <entry>y<subscript>8</subscript></entry>
2456 <entry>y<subscript>7</subscript></entry>
2457 <entry>y<subscript>6</subscript></entry>
2458 <entry>y<subscript>5</subscript></entry>
2459 <entry>y<subscript>4</subscript></entry>
2460 <entry>y<subscript>3</subscript></entry>
2461 <entry>y<subscript>2</subscript></entry>
2462 <entry>y<subscript>1</subscript></entry>
2463 <entry>y<subscript>0</subscript></entry>
2464 </row>
2465 <row>
2466 <entry></entry>
2467 <entry></entry>
2468 <entry></entry>
2469 &dash-ent-12;
2470 <entry>v<subscript>9</subscript></entry>
2471 <entry>v<subscript>8</subscript></entry>
2472 <entry>v<subscript>7</subscript></entry>
2473 <entry>v<subscript>6</subscript></entry>
2474 <entry>v<subscript>5</subscript></entry>
2475 <entry>v<subscript>4</subscript></entry>
2476 <entry>v<subscript>3</subscript></entry>
2477 <entry>v<subscript>2</subscript></entry>
2478 <entry>v<subscript>1</subscript></entry>
2479 <entry>v<subscript>0</subscript></entry>
2480 <entry>y<subscript>9</subscript></entry>
2481 <entry>y<subscript>8</subscript></entry>
2482 <entry>y<subscript>7</subscript></entry>
2483 <entry>y<subscript>6</subscript></entry>
2484 <entry>y<subscript>5</subscript></entry>
2485 <entry>y<subscript>4</subscript></entry>
2486 <entry>y<subscript>3</subscript></entry>
2487 <entry>y<subscript>2</subscript></entry>
2488 <entry>y<subscript>1</subscript></entry>
2489 <entry>y<subscript>0</subscript></entry>
2490 </row>
2491 <row id="V4L2-MBUS-FMT-VYUY10-1X20">
2492 <entry>V4L2_MBUS_FMT_VYUY10_1X20</entry>
2493 <entry>0x201b</entry>
2494 <entry></entry>
2495 &dash-ent-12;
2496 <entry>v<subscript>9</subscript></entry>
2497 <entry>v<subscript>8</subscript></entry>
2498 <entry>v<subscript>7</subscript></entry>
2499 <entry>v<subscript>6</subscript></entry>
2500 <entry>v<subscript>5</subscript></entry>
2501 <entry>v<subscript>4</subscript></entry>
2502 <entry>v<subscript>3</subscript></entry>
2503 <entry>v<subscript>2</subscript></entry>
2504 <entry>v<subscript>1</subscript></entry>
2505 <entry>v<subscript>0</subscript></entry>
2506 <entry>y<subscript>9</subscript></entry>
2507 <entry>y<subscript>8</subscript></entry>
2508 <entry>y<subscript>7</subscript></entry>
2509 <entry>y<subscript>6</subscript></entry>
2510 <entry>y<subscript>5</subscript></entry>
2511 <entry>y<subscript>4</subscript></entry>
2512 <entry>y<subscript>3</subscript></entry>
2513 <entry>y<subscript>2</subscript></entry>
2514 <entry>y<subscript>1</subscript></entry>
2515 <entry>y<subscript>0</subscript></entry>
2516 </row>
2517 <row>
2518 <entry></entry>
2519 <entry></entry>
2520 <entry></entry>
2521 &dash-ent-12;
2522 <entry>u<subscript>9</subscript></entry>
2523 <entry>u<subscript>8</subscript></entry>
2524 <entry>u<subscript>7</subscript></entry>
2525 <entry>u<subscript>6</subscript></entry>
2526 <entry>u<subscript>5</subscript></entry>
2527 <entry>u<subscript>4</subscript></entry>
2528 <entry>u<subscript>3</subscript></entry>
2529 <entry>u<subscript>2</subscript></entry>
2530 <entry>u<subscript>1</subscript></entry>
2531 <entry>u<subscript>0</subscript></entry>
2532 <entry>y<subscript>9</subscript></entry>
2533 <entry>y<subscript>8</subscript></entry>
2534 <entry>y<subscript>7</subscript></entry>
2535 <entry>y<subscript>6</subscript></entry>
2536 <entry>y<subscript>5</subscript></entry>
2537 <entry>y<subscript>4</subscript></entry>
2538 <entry>y<subscript>3</subscript></entry>
2539 <entry>y<subscript>2</subscript></entry>
2540 <entry>y<subscript>1</subscript></entry>
2541 <entry>y<subscript>0</subscript></entry>
2542 </row>
2311 <row id="V4L2-MBUS-FMT-YUYV10-1X20"> 2543 <row id="V4L2-MBUS-FMT-YUYV10-1X20">
2312 <entry>V4L2_MBUS_FMT_YUYV10_1X20</entry> 2544 <entry>V4L2_MBUS_FMT_YUYV10_1X20</entry>
2313 <entry>0x200d</entry> 2545 <entry>0x200d</entry>
@@ -2486,6 +2718,534 @@
2486 <entry>v<subscript>1</subscript></entry> 2718 <entry>v<subscript>1</subscript></entry>
2487 <entry>v<subscript>0</subscript></entry> 2719 <entry>v<subscript>0</subscript></entry>
2488 </row> 2720 </row>
2721 <row id="V4L2-MBUS-FMT-UYVY12-2X12">
2722 <entry>V4L2_MBUS_FMT_UYVY12_2X12</entry>
2723 <entry>0x201c</entry>
2724 <entry></entry>
2725 &dash-ent-20;
2726 <entry>u<subscript>11</subscript></entry>
2727 <entry>u<subscript>10</subscript></entry>
2728 <entry>u<subscript>9</subscript></entry>
2729 <entry>u<subscript>8</subscript></entry>
2730 <entry>u<subscript>7</subscript></entry>
2731 <entry>u<subscript>6</subscript></entry>
2732 <entry>u<subscript>5</subscript></entry>
2733 <entry>u<subscript>4</subscript></entry>
2734 <entry>u<subscript>3</subscript></entry>
2735 <entry>u<subscript>2</subscript></entry>
2736 <entry>u<subscript>1</subscript></entry>
2737 <entry>u<subscript>0</subscript></entry>
2738 </row>
2739 <row>
2740 <entry></entry>
2741 <entry></entry>
2742 <entry></entry>
2743 &dash-ent-20;
2744 <entry>y<subscript>11</subscript></entry>
2745 <entry>y<subscript>10</subscript></entry>
2746 <entry>y<subscript>9</subscript></entry>
2747 <entry>y<subscript>8</subscript></entry>
2748 <entry>y<subscript>7</subscript></entry>
2749 <entry>y<subscript>6</subscript></entry>
2750 <entry>y<subscript>5</subscript></entry>
2751 <entry>y<subscript>4</subscript></entry>
2752 <entry>y<subscript>3</subscript></entry>
2753 <entry>y<subscript>2</subscript></entry>
2754 <entry>y<subscript>1</subscript></entry>
2755 <entry>y<subscript>0</subscript></entry>
2756 </row>
2757 <row>
2758 <entry></entry>
2759 <entry></entry>
2760 <entry></entry>
2761 &dash-ent-20;
2762 <entry>v<subscript>11</subscript></entry>
2763 <entry>v<subscript>10</subscript></entry>
2764 <entry>v<subscript>9</subscript></entry>
2765 <entry>v<subscript>8</subscript></entry>
2766 <entry>v<subscript>7</subscript></entry>
2767 <entry>v<subscript>6</subscript></entry>
2768 <entry>v<subscript>5</subscript></entry>
2769 <entry>v<subscript>4</subscript></entry>
2770 <entry>v<subscript>3</subscript></entry>
2771 <entry>v<subscript>2</subscript></entry>
2772 <entry>v<subscript>1</subscript></entry>
2773 <entry>v<subscript>0</subscript></entry>
2774 </row>
2775 <row>
2776 <entry></entry>
2777 <entry></entry>
2778 <entry></entry>
2779 &dash-ent-20;
2780 <entry>y<subscript>11</subscript></entry>
2781 <entry>y<subscript>10</subscript></entry>
2782 <entry>y<subscript>9</subscript></entry>
2783 <entry>y<subscript>8</subscript></entry>
2784 <entry>y<subscript>7</subscript></entry>
2785 <entry>y<subscript>6</subscript></entry>
2786 <entry>y<subscript>5</subscript></entry>
2787 <entry>y<subscript>4</subscript></entry>
2788 <entry>y<subscript>3</subscript></entry>
2789 <entry>y<subscript>2</subscript></entry>
2790 <entry>y<subscript>1</subscript></entry>
2791 <entry>y<subscript>0</subscript></entry>
2792 </row>
2793 <row id="V4L2-MBUS-FMT-VYUY12-2X12">
2794 <entry>V4L2_MBUS_FMT_VYUY12_2X12</entry>
2795 <entry>0x201d</entry>
2796 <entry></entry>
2797 &dash-ent-20;
2798 <entry>v<subscript>11</subscript></entry>
2799 <entry>v<subscript>10</subscript></entry>
2800 <entry>v<subscript>9</subscript></entry>
2801 <entry>v<subscript>8</subscript></entry>
2802 <entry>v<subscript>7</subscript></entry>
2803 <entry>v<subscript>6</subscript></entry>
2804 <entry>v<subscript>5</subscript></entry>
2805 <entry>v<subscript>4</subscript></entry>
2806 <entry>v<subscript>3</subscript></entry>
2807 <entry>v<subscript>2</subscript></entry>
2808 <entry>v<subscript>1</subscript></entry>
2809 <entry>v<subscript>0</subscript></entry>
2810 </row>
2811 <row>
2812 <entry></entry>
2813 <entry></entry>
2814 <entry></entry>
2815 &dash-ent-20;
2816 <entry>y<subscript>11</subscript></entry>
2817 <entry>y<subscript>10</subscript></entry>
2818 <entry>y<subscript>9</subscript></entry>
2819 <entry>y<subscript>8</subscript></entry>
2820 <entry>y<subscript>7</subscript></entry>
2821 <entry>y<subscript>6</subscript></entry>
2822 <entry>y<subscript>5</subscript></entry>
2823 <entry>y<subscript>4</subscript></entry>
2824 <entry>y<subscript>3</subscript></entry>
2825 <entry>y<subscript>2</subscript></entry>
2826 <entry>y<subscript>1</subscript></entry>
2827 <entry>y<subscript>0</subscript></entry>
2828 </row>
2829 <row>
2830 <entry></entry>
2831 <entry></entry>
2832 <entry></entry>
2833 &dash-ent-20;
2834 <entry>u<subscript>11</subscript></entry>
2835 <entry>u<subscript>10</subscript></entry>
2836 <entry>u<subscript>9</subscript></entry>
2837 <entry>u<subscript>8</subscript></entry>
2838 <entry>u<subscript>7</subscript></entry>
2839 <entry>u<subscript>6</subscript></entry>
2840 <entry>u<subscript>5</subscript></entry>
2841 <entry>u<subscript>4</subscript></entry>
2842 <entry>u<subscript>3</subscript></entry>
2843 <entry>u<subscript>2</subscript></entry>
2844 <entry>u<subscript>1</subscript></entry>
2845 <entry>u<subscript>0</subscript></entry>
2846 </row>
2847 <row>
2848 <entry></entry>
2849 <entry></entry>
2850 <entry></entry>
2851 &dash-ent-20;
2852 <entry>y<subscript>11</subscript></entry>
2853 <entry>y<subscript>10</subscript></entry>
2854 <entry>y<subscript>9</subscript></entry>
2855 <entry>y<subscript>8</subscript></entry>
2856 <entry>y<subscript>7</subscript></entry>
2857 <entry>y<subscript>6</subscript></entry>
2858 <entry>y<subscript>5</subscript></entry>
2859 <entry>y<subscript>4</subscript></entry>
2860 <entry>y<subscript>3</subscript></entry>
2861 <entry>y<subscript>2</subscript></entry>
2862 <entry>y<subscript>1</subscript></entry>
2863 <entry>y<subscript>0</subscript></entry>
2864 </row>
2865 <row id="V4L2-MBUS-FMT-YUYV12-2X12">
2866 <entry>V4L2_MBUS_FMT_YUYV12_2X12</entry>
2867 <entry>0x201e</entry>
2868 <entry></entry>
2869 &dash-ent-20;
2870 <entry>y<subscript>11</subscript></entry>
2871 <entry>y<subscript>10</subscript></entry>
2872 <entry>y<subscript>9</subscript></entry>
2873 <entry>y<subscript>8</subscript></entry>
2874 <entry>y<subscript>7</subscript></entry>
2875 <entry>y<subscript>6</subscript></entry>
2876 <entry>y<subscript>5</subscript></entry>
2877 <entry>y<subscript>4</subscript></entry>
2878 <entry>y<subscript>3</subscript></entry>
2879 <entry>y<subscript>2</subscript></entry>
2880 <entry>y<subscript>1</subscript></entry>
2881 <entry>y<subscript>0</subscript></entry>
2882 </row>
2883 <row>
2884 <entry></entry>
2885 <entry></entry>
2886 <entry></entry>
2887 &dash-ent-20;
2888 <entry>u<subscript>11</subscript></entry>
2889 <entry>u<subscript>10</subscript></entry>
2890 <entry>u<subscript>9</subscript></entry>
2891 <entry>u<subscript>8</subscript></entry>
2892 <entry>u<subscript>7</subscript></entry>
2893 <entry>u<subscript>6</subscript></entry>
2894 <entry>u<subscript>5</subscript></entry>
2895 <entry>u<subscript>4</subscript></entry>
2896 <entry>u<subscript>3</subscript></entry>
2897 <entry>u<subscript>2</subscript></entry>
2898 <entry>u<subscript>1</subscript></entry>
2899 <entry>u<subscript>0</subscript></entry>
2900 </row>
2901 <row>
2902 <entry></entry>
2903 <entry></entry>
2904 <entry></entry>
2905 &dash-ent-20;
2906 <entry>y<subscript>11</subscript></entry>
2907 <entry>y<subscript>10</subscript></entry>
2908 <entry>y<subscript>9</subscript></entry>
2909 <entry>y<subscript>8</subscript></entry>
2910 <entry>y<subscript>7</subscript></entry>
2911 <entry>y<subscript>6</subscript></entry>
2912 <entry>y<subscript>5</subscript></entry>
2913 <entry>y<subscript>4</subscript></entry>
2914 <entry>y<subscript>3</subscript></entry>
2915 <entry>y<subscript>2</subscript></entry>
2916 <entry>y<subscript>1</subscript></entry>
2917 <entry>y<subscript>0</subscript></entry>
2918 </row>
2919 <row>
2920 <entry></entry>
2921 <entry></entry>
2922 <entry></entry>
2923 &dash-ent-20;
2924 <entry>v<subscript>11</subscript></entry>
2925 <entry>v<subscript>10</subscript></entry>
2926 <entry>v<subscript>9</subscript></entry>
2927 <entry>v<subscript>8</subscript></entry>
2928 <entry>v<subscript>7</subscript></entry>
2929 <entry>v<subscript>6</subscript></entry>
2930 <entry>v<subscript>5</subscript></entry>
2931 <entry>v<subscript>4</subscript></entry>
2932 <entry>v<subscript>3</subscript></entry>
2933 <entry>v<subscript>2</subscript></entry>
2934 <entry>v<subscript>1</subscript></entry>
2935 <entry>v<subscript>0</subscript></entry>
2936 </row>
2937 <row id="V4L2-MBUS-FMT-YVYU12-2X12">
2938 <entry>V4L2_MBUS_FMT_YVYU12_2X12</entry>
2939 <entry>0x201f</entry>
2940 <entry></entry>
2941 &dash-ent-20;
2942 <entry>y<subscript>11</subscript></entry>
2943 <entry>y<subscript>10</subscript></entry>
2944 <entry>y<subscript>9</subscript></entry>
2945 <entry>y<subscript>8</subscript></entry>
2946 <entry>y<subscript>7</subscript></entry>
2947 <entry>y<subscript>6</subscript></entry>
2948 <entry>y<subscript>5</subscript></entry>
2949 <entry>y<subscript>4</subscript></entry>
2950 <entry>y<subscript>3</subscript></entry>
2951 <entry>y<subscript>2</subscript></entry>
2952 <entry>y<subscript>1</subscript></entry>
2953 <entry>y<subscript>0</subscript></entry>
2954 </row>
2955 <row>
2956 <entry></entry>
2957 <entry></entry>
2958 <entry></entry>
2959 &dash-ent-20;
2960 <entry>v<subscript>11</subscript></entry>
2961 <entry>v<subscript>10</subscript></entry>
2962 <entry>v<subscript>9</subscript></entry>
2963 <entry>v<subscript>8</subscript></entry>
2964 <entry>v<subscript>7</subscript></entry>
2965 <entry>v<subscript>6</subscript></entry>
2966 <entry>v<subscript>5</subscript></entry>
2967 <entry>v<subscript>4</subscript></entry>
2968 <entry>v<subscript>3</subscript></entry>
2969 <entry>v<subscript>2</subscript></entry>
2970 <entry>v<subscript>1</subscript></entry>
2971 <entry>v<subscript>0</subscript></entry>
2972 </row>
2973 <row>
2974 <entry></entry>
2975 <entry></entry>
2976 <entry></entry>
2977 &dash-ent-20;
2978 <entry>y<subscript>11</subscript></entry>
2979 <entry>y<subscript>10</subscript></entry>
2980 <entry>y<subscript>9</subscript></entry>
2981 <entry>y<subscript>8</subscript></entry>
2982 <entry>y<subscript>7</subscript></entry>
2983 <entry>y<subscript>6</subscript></entry>
2984 <entry>y<subscript>5</subscript></entry>
2985 <entry>y<subscript>4</subscript></entry>
2986 <entry>y<subscript>3</subscript></entry>
2987 <entry>y<subscript>2</subscript></entry>
2988 <entry>y<subscript>1</subscript></entry>
2989 <entry>y<subscript>0</subscript></entry>
2990 </row>
2991 <row>
2992 <entry></entry>
2993 <entry></entry>
2994 <entry></entry>
2995 &dash-ent-20;
2996 <entry>u<subscript>11</subscript></entry>
2997 <entry>u<subscript>10</subscript></entry>
2998 <entry>u<subscript>9</subscript></entry>
2999 <entry>u<subscript>8</subscript></entry>
3000 <entry>u<subscript>7</subscript></entry>
3001 <entry>u<subscript>6</subscript></entry>
3002 <entry>u<subscript>5</subscript></entry>
3003 <entry>u<subscript>4</subscript></entry>
3004 <entry>u<subscript>3</subscript></entry>
3005 <entry>u<subscript>2</subscript></entry>
3006 <entry>u<subscript>1</subscript></entry>
3007 <entry>u<subscript>0</subscript></entry>
3008 </row>
3009 <row id="V4L2-MBUS-FMT-UYVY12-1X24">
3010 <entry>V4L2_MBUS_FMT_UYVY12_1X24</entry>
3011 <entry>0x2020</entry>
3012 <entry></entry>
3013 &dash-ent-8;
3014 <entry>u<subscript>11</subscript></entry>
3015 <entry>u<subscript>10</subscript></entry>
3016 <entry>u<subscript>9</subscript></entry>
3017 <entry>u<subscript>8</subscript></entry>
3018 <entry>u<subscript>7</subscript></entry>
3019 <entry>u<subscript>6</subscript></entry>
3020 <entry>u<subscript>5</subscript></entry>
3021 <entry>u<subscript>4</subscript></entry>
3022 <entry>u<subscript>3</subscript></entry>
3023 <entry>u<subscript>2</subscript></entry>
3024 <entry>u<subscript>1</subscript></entry>
3025 <entry>u<subscript>0</subscript></entry>
3026 <entry>y<subscript>11</subscript></entry>
3027 <entry>y<subscript>10</subscript></entry>
3028 <entry>y<subscript>9</subscript></entry>
3029 <entry>y<subscript>8</subscript></entry>
3030 <entry>y<subscript>7</subscript></entry>
3031 <entry>y<subscript>6</subscript></entry>
3032 <entry>y<subscript>5</subscript></entry>
3033 <entry>y<subscript>4</subscript></entry>
3034 <entry>y<subscript>3</subscript></entry>
3035 <entry>y<subscript>2</subscript></entry>
3036 <entry>y<subscript>1</subscript></entry>
3037 <entry>y<subscript>0</subscript></entry>
3038 </row>
3039 <row>
3040 <entry></entry>
3041 <entry></entry>
3042 <entry></entry>
3043 &dash-ent-8;
3044 <entry>v<subscript>11</subscript></entry>
3045 <entry>v<subscript>10</subscript></entry>
3046 <entry>v<subscript>9</subscript></entry>
3047 <entry>v<subscript>8</subscript></entry>
3048 <entry>v<subscript>7</subscript></entry>
3049 <entry>v<subscript>6</subscript></entry>
3050 <entry>v<subscript>5</subscript></entry>
3051 <entry>v<subscript>4</subscript></entry>
3052 <entry>v<subscript>3</subscript></entry>
3053 <entry>v<subscript>2</subscript></entry>
3054 <entry>v<subscript>1</subscript></entry>
3055 <entry>v<subscript>0</subscript></entry>
3056 <entry>y<subscript>11</subscript></entry>
3057 <entry>y<subscript>10</subscript></entry>
3058 <entry>y<subscript>9</subscript></entry>
3059 <entry>y<subscript>8</subscript></entry>
3060 <entry>y<subscript>7</subscript></entry>
3061 <entry>y<subscript>6</subscript></entry>
3062 <entry>y<subscript>5</subscript></entry>
3063 <entry>y<subscript>4</subscript></entry>
3064 <entry>y<subscript>3</subscript></entry>
3065 <entry>y<subscript>2</subscript></entry>
3066 <entry>y<subscript>1</subscript></entry>
3067 <entry>y<subscript>0</subscript></entry>
3068 </row>
3069 <row id="V4L2-MBUS-FMT-VYUY12-1X24">
3070 <entry>V4L2_MBUS_FMT_VYUY12_1X24</entry>
3071 <entry>0x2021</entry>
3072 <entry></entry>
3073 &dash-ent-8;
3074 <entry>v<subscript>11</subscript></entry>
3075 <entry>v<subscript>10</subscript></entry>
3076 <entry>v<subscript>9</subscript></entry>
3077 <entry>v<subscript>8</subscript></entry>
3078 <entry>v<subscript>7</subscript></entry>
3079 <entry>v<subscript>6</subscript></entry>
3080 <entry>v<subscript>5</subscript></entry>
3081 <entry>v<subscript>4</subscript></entry>
3082 <entry>v<subscript>3</subscript></entry>
3083 <entry>v<subscript>2</subscript></entry>
3084 <entry>v<subscript>1</subscript></entry>
3085 <entry>v<subscript>0</subscript></entry>
3086 <entry>y<subscript>11</subscript></entry>
3087 <entry>y<subscript>10</subscript></entry>
3088 <entry>y<subscript>9</subscript></entry>
3089 <entry>y<subscript>8</subscript></entry>
3090 <entry>y<subscript>7</subscript></entry>
3091 <entry>y<subscript>6</subscript></entry>
3092 <entry>y<subscript>5</subscript></entry>
3093 <entry>y<subscript>4</subscript></entry>
3094 <entry>y<subscript>3</subscript></entry>
3095 <entry>y<subscript>2</subscript></entry>
3096 <entry>y<subscript>1</subscript></entry>
3097 <entry>y<subscript>0</subscript></entry>
3098 </row>
3099 <row>
3100 <entry></entry>
3101 <entry></entry>
3102 <entry></entry>
3103 &dash-ent-8;
3104 <entry>u<subscript>11</subscript></entry>
3105 <entry>u<subscript>10</subscript></entry>
3106 <entry>u<subscript>9</subscript></entry>
3107 <entry>u<subscript>8</subscript></entry>
3108 <entry>u<subscript>7</subscript></entry>
3109 <entry>u<subscript>6</subscript></entry>
3110 <entry>u<subscript>5</subscript></entry>
3111 <entry>u<subscript>4</subscript></entry>
3112 <entry>u<subscript>3</subscript></entry>
3113 <entry>u<subscript>2</subscript></entry>
3114 <entry>u<subscript>1</subscript></entry>
3115 <entry>u<subscript>0</subscript></entry>
3116 <entry>y<subscript>11</subscript></entry>
3117 <entry>y<subscript>10</subscript></entry>
3118 <entry>y<subscript>9</subscript></entry>
3119 <entry>y<subscript>8</subscript></entry>
3120 <entry>y<subscript>7</subscript></entry>
3121 <entry>y<subscript>6</subscript></entry>
3122 <entry>y<subscript>5</subscript></entry>
3123 <entry>y<subscript>4</subscript></entry>
3124 <entry>y<subscript>3</subscript></entry>
3125 <entry>y<subscript>2</subscript></entry>
3126 <entry>y<subscript>1</subscript></entry>
3127 <entry>y<subscript>0</subscript></entry>
3128 </row>
3129 <row id="V4L2-MBUS-FMT-YUYV12-1X24">
3130 <entry>V4L2_MBUS_FMT_YUYV12_1X24</entry>
3131 <entry>0x2022</entry>
3132 <entry></entry>
3133 &dash-ent-8;
3134 <entry>y<subscript>11</subscript></entry>
3135 <entry>y<subscript>10</subscript></entry>
3136 <entry>y<subscript>9</subscript></entry>
3137 <entry>y<subscript>8</subscript></entry>
3138 <entry>y<subscript>7</subscript></entry>
3139 <entry>y<subscript>6</subscript></entry>
3140 <entry>y<subscript>5</subscript></entry>
3141 <entry>y<subscript>4</subscript></entry>
3142 <entry>y<subscript>3</subscript></entry>
3143 <entry>y<subscript>2</subscript></entry>
3144 <entry>y<subscript>1</subscript></entry>
3145 <entry>y<subscript>0</subscript></entry>
3146 <entry>u<subscript>11</subscript></entry>
3147 <entry>u<subscript>10</subscript></entry>
3148 <entry>u<subscript>9</subscript></entry>
3149 <entry>u<subscript>8</subscript></entry>
3150 <entry>u<subscript>7</subscript></entry>
3151 <entry>u<subscript>6</subscript></entry>
3152 <entry>u<subscript>5</subscript></entry>
3153 <entry>u<subscript>4</subscript></entry>
3154 <entry>u<subscript>3</subscript></entry>
3155 <entry>u<subscript>2</subscript></entry>
3156 <entry>u<subscript>1</subscript></entry>
3157 <entry>u<subscript>0</subscript></entry>
3158 </row>
3159 <row>
3160 <entry></entry>
3161 <entry></entry>
3162 <entry></entry>
3163 &dash-ent-8;
3164 <entry>y<subscript>11</subscript></entry>
3165 <entry>y<subscript>10</subscript></entry>
3166 <entry>y<subscript>9</subscript></entry>
3167 <entry>y<subscript>8</subscript></entry>
3168 <entry>y<subscript>7</subscript></entry>
3169 <entry>y<subscript>6</subscript></entry>
3170 <entry>y<subscript>5</subscript></entry>
3171 <entry>y<subscript>4</subscript></entry>
3172 <entry>y<subscript>3</subscript></entry>
3173 <entry>y<subscript>2</subscript></entry>
3174 <entry>y<subscript>1</subscript></entry>
3175 <entry>y<subscript>0</subscript></entry>
3176 <entry>v<subscript>11</subscript></entry>
3177 <entry>v<subscript>10</subscript></entry>
3178 <entry>v<subscript>9</subscript></entry>
3179 <entry>v<subscript>8</subscript></entry>
3180 <entry>v<subscript>7</subscript></entry>
3181 <entry>v<subscript>6</subscript></entry>
3182 <entry>v<subscript>5</subscript></entry>
3183 <entry>v<subscript>4</subscript></entry>
3184 <entry>v<subscript>3</subscript></entry>
3185 <entry>v<subscript>2</subscript></entry>
3186 <entry>v<subscript>1</subscript></entry>
3187 <entry>v<subscript>0</subscript></entry>
3188 </row>
3189 <row id="V4L2-MBUS-FMT-YVYU12-1X24">
3190 <entry>V4L2_MBUS_FMT_YVYU12_1X24</entry>
3191 <entry>0x2023</entry>
3192 <entry></entry>
3193 &dash-ent-8;
3194 <entry>y<subscript>11</subscript></entry>
3195 <entry>y<subscript>10</subscript></entry>
3196 <entry>y<subscript>9</subscript></entry>
3197 <entry>y<subscript>8</subscript></entry>
3198 <entry>y<subscript>7</subscript></entry>
3199 <entry>y<subscript>6</subscript></entry>
3200 <entry>y<subscript>5</subscript></entry>
3201 <entry>y<subscript>4</subscript></entry>
3202 <entry>y<subscript>3</subscript></entry>
3203 <entry>y<subscript>2</subscript></entry>
3204 <entry>y<subscript>1</subscript></entry>
3205 <entry>y<subscript>0</subscript></entry>
3206 <entry>v<subscript>11</subscript></entry>
3207 <entry>v<subscript>10</subscript></entry>
3208 <entry>v<subscript>9</subscript></entry>
3209 <entry>v<subscript>8</subscript></entry>
3210 <entry>v<subscript>7</subscript></entry>
3211 <entry>v<subscript>6</subscript></entry>
3212 <entry>v<subscript>5</subscript></entry>
3213 <entry>v<subscript>4</subscript></entry>
3214 <entry>v<subscript>3</subscript></entry>
3215 <entry>v<subscript>2</subscript></entry>
3216 <entry>v<subscript>1</subscript></entry>
3217 <entry>v<subscript>0</subscript></entry>
3218 </row>
3219 <row>
3220 <entry></entry>
3221 <entry></entry>
3222 <entry></entry>
3223 &dash-ent-8;
3224 <entry>y<subscript>11</subscript></entry>
3225 <entry>y<subscript>10</subscript></entry>
3226 <entry>y<subscript>9</subscript></entry>
3227 <entry>y<subscript>8</subscript></entry>
3228 <entry>y<subscript>7</subscript></entry>
3229 <entry>y<subscript>6</subscript></entry>
3230 <entry>y<subscript>5</subscript></entry>
3231 <entry>y<subscript>4</subscript></entry>
3232 <entry>y<subscript>3</subscript></entry>
3233 <entry>y<subscript>2</subscript></entry>
3234 <entry>y<subscript>1</subscript></entry>
3235 <entry>y<subscript>0</subscript></entry>
3236 <entry>u<subscript>11</subscript></entry>
3237 <entry>u<subscript>10</subscript></entry>
3238 <entry>u<subscript>9</subscript></entry>
3239 <entry>u<subscript>8</subscript></entry>
3240 <entry>u<subscript>7</subscript></entry>
3241 <entry>u<subscript>6</subscript></entry>
3242 <entry>u<subscript>5</subscript></entry>
3243 <entry>u<subscript>4</subscript></entry>
3244 <entry>u<subscript>3</subscript></entry>
3245 <entry>u<subscript>2</subscript></entry>
3246 <entry>u<subscript>1</subscript></entry>
3247 <entry>u<subscript>0</subscript></entry>
3248 </row>
2489 </tbody> 3249 </tbody>
2490 </tgroup> 3250 </tgroup>
2491 </table> 3251 </table>
diff --git a/Documentation/DocBook/media/v4l/vidioc-dqevent.xml b/Documentation/DocBook/media/v4l/vidioc-dqevent.xml
index 89891adb928a..820f86e8744b 100644
--- a/Documentation/DocBook/media/v4l/vidioc-dqevent.xml
+++ b/Documentation/DocBook/media/v4l/vidioc-dqevent.xml
@@ -242,6 +242,22 @@
242 </tgroup> 242 </tgroup>
243 </table> 243 </table>
244 244
245 <table frame="none" pgwide="1" id="v4l2-event-src-change">
246 <title>struct <structname>v4l2_event_src_change</structname></title>
247 <tgroup cols="3">
248 &cs-str;
249 <tbody valign="top">
250 <row>
251 <entry>__u32</entry>
252 <entry><structfield>changes</structfield></entry>
253 <entry>
254 A bitmask that tells what has changed. See <xref linkend="src-changes-flags" />.
255 </entry>
256 </row>
257 </tbody>
258 </tgroup>
259 </table>
260
245 <table pgwide="1" frame="none" id="changes-flags"> 261 <table pgwide="1" frame="none" id="changes-flags">
246 <title>Changes</title> 262 <title>Changes</title>
247 <tgroup cols="3"> 263 <tgroup cols="3">
@@ -270,6 +286,23 @@
270 </tbody> 286 </tbody>
271 </tgroup> 287 </tgroup>
272 </table> 288 </table>
289
290 <table pgwide="1" frame="none" id="src-changes-flags">
291 <title>Source Changes</title>
292 <tgroup cols="3">
293 &cs-def;
294 <tbody valign="top">
295 <row>
296 <entry><constant>V4L2_EVENT_SRC_CH_RESOLUTION</constant></entry>
297 <entry>0x0001</entry>
298 <entry>This event gets triggered when a resolution change is
299 detected at an input. This can come from an input connector or
300 from a video decoder.
301 </entry>
302 </row>
303 </tbody>
304 </tgroup>
305 </table>
273 </refsect1> 306 </refsect1>
274 <refsect1> 307 <refsect1>
275 &return-value; 308 &return-value;
diff --git a/Documentation/DocBook/media/v4l/vidioc-dv-timings-cap.xml b/Documentation/DocBook/media/v4l/vidioc-dv-timings-cap.xml
index cd7720d404ea..28a8c1e1c705 100644
--- a/Documentation/DocBook/media/v4l/vidioc-dv-timings-cap.xml
+++ b/Documentation/DocBook/media/v4l/vidioc-dv-timings-cap.xml
@@ -1,11 +1,12 @@
1<refentry id="vidioc-dv-timings-cap"> 1<refentry id="vidioc-dv-timings-cap">
2 <refmeta> 2 <refmeta>
3 <refentrytitle>ioctl VIDIOC_DV_TIMINGS_CAP</refentrytitle> 3 <refentrytitle>ioctl VIDIOC_DV_TIMINGS_CAP, VIDIOC_SUBDEV_DV_TIMINGS_CAP</refentrytitle>
4 &manvol; 4 &manvol;
5 </refmeta> 5 </refmeta>
6 6
7 <refnamediv> 7 <refnamediv>
8 <refname>VIDIOC_DV_TIMINGS_CAP</refname> 8 <refname>VIDIOC_DV_TIMINGS_CAP</refname>
9 <refname>VIDIOC_SUBDEV_DV_TIMINGS_CAP</refname>
9 <refpurpose>The capabilities of the Digital Video receiver/transmitter</refpurpose> 10 <refpurpose>The capabilities of the Digital Video receiver/transmitter</refpurpose>
10 </refnamediv> 11 </refnamediv>
11 12
@@ -33,7 +34,7 @@
33 <varlistentry> 34 <varlistentry>
34 <term><parameter>request</parameter></term> 35 <term><parameter>request</parameter></term>
35 <listitem> 36 <listitem>
36 <para>VIDIOC_DV_TIMINGS_CAP</para> 37 <para>VIDIOC_DV_TIMINGS_CAP, VIDIOC_SUBDEV_DV_TIMINGS_CAP</para>
37 </listitem> 38 </listitem>
38 </varlistentry> 39 </varlistentry>
39 <varlistentry> 40 <varlistentry>
@@ -54,10 +55,19 @@
54 interface and may change in the future.</para> 55 interface and may change in the future.</para>
55 </note> 56 </note>
56 57
57 <para>To query the capabilities of the DV receiver/transmitter applications can call 58 <para>To query the capabilities of the DV receiver/transmitter applications
58this ioctl and the driver will fill in the structure. Note that drivers may return 59can call the <constant>VIDIOC_DV_TIMINGS_CAP</constant> ioctl on a video node
60and the driver will fill in the structure. Note that drivers may return
59different values after switching the video input or output.</para> 61different values after switching the video input or output.</para>
60 62
63 <para>When implemented by the driver DV capabilities of subdevices can be
64queried by calling the <constant>VIDIOC_SUBDEV_DV_TIMINGS_CAP</constant> ioctl
65directly on a subdevice node. The capabilities are specific to inputs (for DV
66receivers) or outputs (for DV transmitters), applications must specify the
67desired pad number in the &v4l2-dv-timings-cap; <structfield>pad</structfield>
68field. Attempts to query capabilities on a pad that doesn't support them will
69return an &EINVAL;.</para>
70
61 <table pgwide="1" frame="none" id="v4l2-bt-timings-cap"> 71 <table pgwide="1" frame="none" id="v4l2-bt-timings-cap">
62 <title>struct <structname>v4l2_bt_timings_cap</structname></title> 72 <title>struct <structname>v4l2_bt_timings_cap</structname></title>
63 <tgroup cols="3"> 73 <tgroup cols="3">
@@ -127,7 +137,14 @@ different values after switching the video input or output.</para>
127 </row> 137 </row>
128 <row> 138 <row>
129 <entry>__u32</entry> 139 <entry>__u32</entry>
130 <entry><structfield>reserved</structfield>[3]</entry> 140 <entry><structfield>pad</structfield></entry>
141 <entry>Pad number as reported by the media controller API. This field
142 is only used when operating on a subdevice node. When operating on a
143 video node applications must set this field to zero.</entry>
144 </row>
145 <row>
146 <entry>__u32</entry>
147 <entry><structfield>reserved</structfield>[2]</entry>
131 <entry>Reserved for future extensions. Drivers must set the array to zero.</entry> 148 <entry>Reserved for future extensions. Drivers must set the array to zero.</entry>
132 </row> 149 </row>
133 <row> 150 <row>
diff --git a/Documentation/DocBook/media/v4l/vidioc-enum-dv-timings.xml b/Documentation/DocBook/media/v4l/vidioc-enum-dv-timings.xml
index b3e17c1dfaf5..b9fdfeacdbcb 100644
--- a/Documentation/DocBook/media/v4l/vidioc-enum-dv-timings.xml
+++ b/Documentation/DocBook/media/v4l/vidioc-enum-dv-timings.xml
@@ -1,11 +1,12 @@
1<refentry id="vidioc-enum-dv-timings"> 1<refentry id="vidioc-enum-dv-timings">
2 <refmeta> 2 <refmeta>
3 <refentrytitle>ioctl VIDIOC_ENUM_DV_TIMINGS</refentrytitle> 3 <refentrytitle>ioctl VIDIOC_ENUM_DV_TIMINGS, VIDIOC_SUBDEV_ENUM_DV_TIMINGS</refentrytitle>
4 &manvol; 4 &manvol;
5 </refmeta> 5 </refmeta>
6 6
7 <refnamediv> 7 <refnamediv>
8 <refname>VIDIOC_ENUM_DV_TIMINGS</refname> 8 <refname>VIDIOC_ENUM_DV_TIMINGS</refname>
9 <refname>VIDIOC_SUBDEV_ENUM_DV_TIMINGS</refname>
9 <refpurpose>Enumerate supported Digital Video timings</refpurpose> 10 <refpurpose>Enumerate supported Digital Video timings</refpurpose>
10 </refnamediv> 11 </refnamediv>
11 12
@@ -33,7 +34,7 @@
33 <varlistentry> 34 <varlistentry>
34 <term><parameter>request</parameter></term> 35 <term><parameter>request</parameter></term>
35 <listitem> 36 <listitem>
36 <para>VIDIOC_ENUM_DV_TIMINGS</para> 37 <para>VIDIOC_ENUM_DV_TIMINGS, VIDIOC_SUBDEV_ENUM_DV_TIMINGS</para>
37 </listitem> 38 </listitem>
38 </varlistentry> 39 </varlistentry>
39 <varlistentry> 40 <varlistentry>
@@ -61,14 +62,21 @@ standards or even custom timings that are not in this list.</para>
61 62
62 <para>To query the available timings, applications initialize the 63 <para>To query the available timings, applications initialize the
63<structfield>index</structfield> field and zero the reserved array of &v4l2-enum-dv-timings; 64<structfield>index</structfield> field and zero the reserved array of &v4l2-enum-dv-timings;
64and call the <constant>VIDIOC_ENUM_DV_TIMINGS</constant> ioctl with a pointer to this 65and call the <constant>VIDIOC_ENUM_DV_TIMINGS</constant> ioctl on a video node with a
65structure. Drivers fill the rest of the structure or return an 66pointer to this structure. Drivers fill the rest of the structure or return an
66&EINVAL; when the index is out of bounds. To enumerate all supported DV timings, 67&EINVAL; when the index is out of bounds. To enumerate all supported DV timings,
67applications shall begin at index zero, incrementing by one until the 68applications shall begin at index zero, incrementing by one until the
68driver returns <errorcode>EINVAL</errorcode>. Note that drivers may enumerate a 69driver returns <errorcode>EINVAL</errorcode>. Note that drivers may enumerate a
69different set of DV timings after switching the video input or 70different set of DV timings after switching the video input or
70output.</para> 71output.</para>
71 72
73 <para>When implemented by the driver DV timings of subdevices can be queried
74by calling the <constant>VIDIOC_SUBDEV_ENUM_DV_TIMINGS</constant> ioctl directly
75on a subdevice node. The DV timings are specific to inputs (for DV receivers) or
76outputs (for DV transmitters), applications must specify the desired pad number
77in the &v4l2-enum-dv-timings; <structfield>pad</structfield> field. Attempts to
78enumerate timings on a pad that doesn't support them will return an &EINVAL;.</para>
79
72 <table pgwide="1" frame="none" id="v4l2-enum-dv-timings"> 80 <table pgwide="1" frame="none" id="v4l2-enum-dv-timings">
73 <title>struct <structname>v4l2_enum_dv_timings</structname></title> 81 <title>struct <structname>v4l2_enum_dv_timings</structname></title>
74 <tgroup cols="3"> 82 <tgroup cols="3">
@@ -82,8 +90,16 @@ application.</entry>
82 </row> 90 </row>
83 <row> 91 <row>
84 <entry>__u32</entry> 92 <entry>__u32</entry>
85 <entry><structfield>reserved</structfield>[3]</entry> 93 <entry><structfield>pad</structfield></entry>
86 <entry>Reserved for future extensions. Drivers must set the array to zero.</entry> 94 <entry>Pad number as reported by the media controller API. This field
95 is only used when operating on a subdevice node. When operating on a
96 video node applications must set this field to zero.</entry>
97 </row>
98 <row>
99 <entry>__u32</entry>
100 <entry><structfield>reserved</structfield>[2]</entry>
101 <entry>Reserved for future extensions. Drivers and applications must
102 set the array to zero.</entry>
87 </row> 103 </row>
88 <row> 104 <row>
89 <entry>&v4l2-dv-timings;</entry> 105 <entry>&v4l2-dv-timings;</entry>
@@ -103,7 +119,7 @@ application.</entry>
103 <term><errorcode>EINVAL</errorcode></term> 119 <term><errorcode>EINVAL</errorcode></term>
104 <listitem> 120 <listitem>
105 <para>The &v4l2-enum-dv-timings; <structfield>index</structfield> 121 <para>The &v4l2-enum-dv-timings; <structfield>index</structfield>
106is out of bounds.</para> 122is out of bounds or the <structfield>pad</structfield> number is invalid.</para>
107 </listitem> 123 </listitem>
108 </varlistentry> 124 </varlistentry>
109 <varlistentry> 125 <varlistentry>
diff --git a/Documentation/DocBook/media/v4l/vidioc-subscribe-event.xml b/Documentation/DocBook/media/v4l/vidioc-subscribe-event.xml
index 5c70b616d818..17efa870d4d2 100644
--- a/Documentation/DocBook/media/v4l/vidioc-subscribe-event.xml
+++ b/Documentation/DocBook/media/v4l/vidioc-subscribe-event.xml
@@ -155,6 +155,26 @@
155 </entry> 155 </entry>
156 </row> 156 </row>
157 <row> 157 <row>
158 <entry><constant>V4L2_EVENT_SOURCE_CHANGE</constant></entry>
159 <entry>5</entry>
160 <entry>
161 <para>This event is triggered when a source parameter change is
162 detected during runtime by the video device. It can be a
163 runtime resolution change triggered by a video decoder or the
164 format change happening on an input connector.
165 This event requires that the <structfield>id</structfield>
166 matches the input index (when used with a video device node)
167 or the pad index (when used with a subdevice node) from which
168 you want to receive events.</para>
169
170 <para>This event has a &v4l2-event-src-change; associated
171 with it. The <structfield>changes</structfield> bitfield denotes
172 what has changed for the subscribed pad. If multiple events
173 occurred before application could dequeue them, then the changes
174 will have the ORed value of all the events generated.</para>
175 </entry>
176 </row>
177 <row>
158 <entry><constant>V4L2_EVENT_PRIVATE_START</constant></entry> 178 <entry><constant>V4L2_EVENT_PRIVATE_START</constant></entry>
159 <entry>0x08000000</entry> 179 <entry>0x08000000</entry>
160 <entry>Base event number for driver-private events.</entry> 180 <entry>Base event number for driver-private events.</entry>
diff --git a/Documentation/devicetree/bindings/media/s5p-mfc.txt b/Documentation/devicetree/bindings/media/s5p-mfc.txt
index f4181680831b..3e3c5f349570 100644
--- a/Documentation/devicetree/bindings/media/s5p-mfc.txt
+++ b/Documentation/devicetree/bindings/media/s5p-mfc.txt
@@ -10,7 +10,8 @@ Required properties:
10 - compatible : value should be either one among the following 10 - compatible : value should be either one among the following
11 (a) "samsung,mfc-v5" for MFC v5 present in Exynos4 SoCs 11 (a) "samsung,mfc-v5" for MFC v5 present in Exynos4 SoCs
12 (b) "samsung,mfc-v6" for MFC v6 present in Exynos5 SoCs 12 (b) "samsung,mfc-v6" for MFC v6 present in Exynos5 SoCs
13 (b) "samsung,mfc-v7" for MFC v7 present in Exynos5420 SoC 13 (c) "samsung,mfc-v7" for MFC v7 present in Exynos5420 SoC
14 (d) "samsung,mfc-v8" for MFC v8 present in Exynos5800 SoC
14 15
15 - reg : Physical base address of the IP registers and length of memory 16 - reg : Physical base address of the IP registers and length of memory
16 mapped region. 17 mapped region.
diff --git a/Documentation/video4linux/CARDLIST.bttv b/Documentation/video4linux/CARDLIST.bttv
index 2f6e93597ce0..b092c0a14df2 100644
--- a/Documentation/video4linux/CARDLIST.bttv
+++ b/Documentation/video4linux/CARDLIST.bttv
@@ -164,3 +164,4 @@
164163 -> Bt848 Capture 14MHz 164163 -> Bt848 Capture 14MHz
165164 -> CyberVision CV06 (SV) 165164 -> CyberVision CV06 (SV)
166165 -> Kworld V-Stream Xpert TV PVR878 166165 -> Kworld V-Stream Xpert TV PVR878
167166 -> PCI-8604PW
diff --git a/Documentation/video4linux/CARDLIST.em28xx b/Documentation/video4linux/CARDLIST.em28xx
index e085b1243b45..5a3ddcd340d3 100644
--- a/Documentation/video4linux/CARDLIST.em28xx
+++ b/Documentation/video4linux/CARDLIST.em28xx
@@ -92,3 +92,4 @@
92 91 -> SpeedLink Vicious And Devine Laplace webcam (em2765) [1ae7:9003,1ae7:9004] 92 91 -> SpeedLink Vicious And Devine Laplace webcam (em2765) [1ae7:9003,1ae7:9004]
93 92 -> PCTV DVB-S2 Stick (461e) (em28178) 93 92 -> PCTV DVB-S2 Stick (461e) (em28178)
94 93 -> KWorld USB ATSC TV Stick UB435-Q V3 (em2874) [1b80:e34c] 94 93 -> KWorld USB ATSC TV Stick UB435-Q V3 (em2874) [1b80:e34c]
95 94 -> PCTV tripleStick (292e) (em28178)
diff --git a/Documentation/video4linux/fimc.txt b/Documentation/video4linux/fimc.txt
index 7d6e160724bd..e0c6b8bc4743 100644
--- a/Documentation/video4linux/fimc.txt
+++ b/Documentation/video4linux/fimc.txt
@@ -140,39 +140,9 @@ You can either grep through the kernel log to find relevant information, i.e.
140or retrieve the information from /dev/media? with help of the media-ctl tool: 140or retrieve the information from /dev/media? with help of the media-ctl tool:
141# media-ctl -p 141# media-ctl -p
142 142
1436. Platform support
144===================
145
146The machine code (arch/arm/plat-samsung and arch/arm/mach-*) must select
147following options:
148
149CONFIG_S5P_DEV_FIMC0 mandatory
150CONFIG_S5P_DEV_FIMC1 \
151CONFIG_S5P_DEV_FIMC2 | optional
152CONFIG_S5P_DEV_FIMC3 |
153CONFIG_S5P_SETUP_FIMC /
154CONFIG_S5P_DEV_CSIS0 \ optional for MIPI-CSI interface
155CONFIG_S5P_DEV_CSIS1 /
156
157Except that, relevant s5p_device_fimc? should be registered in the machine code
158in addition to a "s5p-fimc-md" platform device to which the media device driver
159is bound. The "s5p-fimc-md" device instance is required even if only mem-to-mem
160operation is used.
161
162The description of sensor(s) attached to FIMC/MIPI-CSIS camera inputs should be
163passed as the "s5p-fimc-md" device platform_data. The platform data structure
164is defined in file include/media/s5p_fimc.h.
165
1667. Build 1437. Build
167======== 144========
168 145
169This driver depends on following config options:
170PLAT_S5P,
171PM_RUNTIME,
172I2C,
173REGULATOR,
174VIDEO_V4L2_SUBDEV_API,
175
176If the driver is built as a loadable kernel module (CONFIG_VIDEO_SAMSUNG_S5P_FIMC=m) 146If the driver is built as a loadable kernel module (CONFIG_VIDEO_SAMSUNG_S5P_FIMC=m)
177two modules are created (in addition to the core v4l2 modules): s5p-fimc.ko and 147two modules are created (in addition to the core v4l2 modules): s5p-fimc.ko and
178optional s5p-csis.ko (MIPI-CSI receiver subdev). 148optional s5p-csis.ko (MIPI-CSI receiver subdev).
diff --git a/Documentation/video4linux/v4l2-pci-skeleton.c b/Documentation/video4linux/v4l2-pci-skeleton.c
index 3a1c0d2dafce..46904fe49609 100644
--- a/Documentation/video4linux/v4l2-pci-skeleton.c
+++ b/Documentation/video4linux/v4l2-pci-skeleton.c
@@ -77,7 +77,8 @@ struct skeleton {
77 77
78 spinlock_t qlock; 78 spinlock_t qlock;
79 struct list_head buf_list; 79 struct list_head buf_list;
80 unsigned int sequence; 80 unsigned field;
81 unsigned sequence;
81}; 82};
82 83
83struct skel_buffer { 84struct skel_buffer {
@@ -124,7 +125,7 @@ static const struct v4l2_dv_timings_cap skel_timings_cap = {
124 * Interrupt handler: typically interrupts happen after a new frame has been 125 * Interrupt handler: typically interrupts happen after a new frame has been
125 * captured. It is the job of the handler to remove the new frame from the 126 * captured. It is the job of the handler to remove the new frame from the
126 * internal list and give it back to the vb2 framework, updating the sequence 127 * internal list and give it back to the vb2 framework, updating the sequence
127 * counter and timestamp at the same time. 128 * counter, field and timestamp at the same time.
128 */ 129 */
129static irqreturn_t skeleton_irq(int irq, void *dev_id) 130static irqreturn_t skeleton_irq(int irq, void *dev_id)
130{ 131{
@@ -139,8 +140,15 @@ static irqreturn_t skeleton_irq(int irq, void *dev_id)
139 spin_lock(&skel->qlock); 140 spin_lock(&skel->qlock);
140 list_del(&new_buf->list); 141 list_del(&new_buf->list);
141 spin_unlock(&skel->qlock); 142 spin_unlock(&skel->qlock);
142 new_buf->vb.v4l2_buf.sequence = skel->sequence++;
143 v4l2_get_timestamp(&new_buf->vb.v4l2_buf.timestamp); 143 v4l2_get_timestamp(&new_buf->vb.v4l2_buf.timestamp);
144 new_buf->vb.v4l2_buf.sequence = skel->sequence++;
145 new_buf->vb.v4l2_buf.field = skel->field;
146 if (skel->format.field == V4L2_FIELD_ALTERNATE) {
147 if (skel->field == V4L2_FIELD_BOTTOM)
148 skel->field = V4L2_FIELD_TOP;
149 else if (skel->field == V4L2_FIELD_TOP)
150 skel->field = V4L2_FIELD_BOTTOM;
151 }
144 vb2_buffer_done(&new_buf->vb, VB2_BUF_STATE_DONE); 152 vb2_buffer_done(&new_buf->vb, VB2_BUF_STATE_DONE);
145 } 153 }
146#endif 154#endif
@@ -160,6 +168,17 @@ static int queue_setup(struct vb2_queue *vq, const struct v4l2_format *fmt,
160{ 168{
161 struct skeleton *skel = vb2_get_drv_priv(vq); 169 struct skeleton *skel = vb2_get_drv_priv(vq);
162 170
171 skel->field = skel->format.field;
172 if (skel->field == V4L2_FIELD_ALTERNATE) {
173 /*
174 * You cannot use read() with FIELD_ALTERNATE since the field
175 * information (TOP/BOTTOM) cannot be passed back to the user.
176 */
177 if (vb2_fileio_is_active(vq))
178 return -EINVAL;
179 skel->field = V4L2_FIELD_TOP;
180 }
181
163 if (vq->num_buffers + *nbuffers < 3) 182 if (vq->num_buffers + *nbuffers < 3)
164 *nbuffers = 3 - vq->num_buffers; 183 *nbuffers = 3 - vq->num_buffers;
165 184
@@ -173,10 +192,7 @@ static int queue_setup(struct vb2_queue *vq, const struct v4l2_format *fmt,
173 192
174/* 193/*
175 * Prepare the buffer for queueing to the DMA engine: check and set the 194 * Prepare the buffer for queueing to the DMA engine: check and set the
176 * payload size and fill in the field. Note: if the format's field is 195 * payload size.
177 * V4L2_FIELD_ALTERNATE, then vb->v4l2_buf.field should be set in the
178 * interrupt handler since that's usually where you know if the TOP or
179 * BOTTOM field has been captured.
180 */ 196 */
181static int buffer_prepare(struct vb2_buffer *vb) 197static int buffer_prepare(struct vb2_buffer *vb)
182{ 198{
@@ -190,7 +206,6 @@ static int buffer_prepare(struct vb2_buffer *vb)
190 } 206 }
191 207
192 vb2_set_plane_payload(vb, 0, size); 208 vb2_set_plane_payload(vb, 0, size);
193 vb->v4l2_buf.field = skel->format.field;
194 return 0; 209 return 0;
195} 210}
196 211
@@ -254,7 +269,7 @@ static int start_streaming(struct vb2_queue *vq, unsigned int count)
254 * Stop the DMA engine. Any remaining buffers in the DMA queue are dequeued 269 * Stop the DMA engine. Any remaining buffers in the DMA queue are dequeued
255 * and passed on to the vb2 framework marked as STATE_ERROR. 270 * and passed on to the vb2 framework marked as STATE_ERROR.
256 */ 271 */
257static int stop_streaming(struct vb2_queue *vq) 272static void stop_streaming(struct vb2_queue *vq)
258{ 273{
259 struct skeleton *skel = vb2_get_drv_priv(vq); 274 struct skeleton *skel = vb2_get_drv_priv(vq);
260 275
@@ -262,7 +277,6 @@ static int stop_streaming(struct vb2_queue *vq)
262 277
263 /* Release all active buffers */ 278 /* Release all active buffers */
264 return_all_buffers(skel, VB2_BUF_STATE_ERROR); 279 return_all_buffers(skel, VB2_BUF_STATE_ERROR);
265 return 0;
266} 280}
267 281
268/* 282/*
@@ -319,10 +333,12 @@ static void skeleton_fill_pix_format(struct skeleton *skel,
319 /* HDMI input */ 333 /* HDMI input */
320 pix->width = skel->timings.bt.width; 334 pix->width = skel->timings.bt.width;
321 pix->height = skel->timings.bt.height; 335 pix->height = skel->timings.bt.height;
322 if (skel->timings.bt.interlaced) 336 if (skel->timings.bt.interlaced) {
323 pix->field = V4L2_FIELD_INTERLACED; 337 pix->field = V4L2_FIELD_ALTERNATE;
324 else 338 pix->height /= 2;
339 } else {
325 pix->field = V4L2_FIELD_NONE; 340 pix->field = V4L2_FIELD_NONE;
341 }
326 pix->colorspace = V4L2_COLORSPACE_REC709; 342 pix->colorspace = V4L2_COLORSPACE_REC709;
327 } 343 }
328 344