2010-02-17 17:13:11

by Mauro Carvalho Chehab

[permalink] [raw]
Subject: [PATCH 4/4] V4L/DVB: v4l: document new Bayer and monochrome pixel formats

Document all four 10-bit Bayer formats, 10-bit monochrome and a missing
8-bit Bayer formats.

[[email protected]: remove duplicated symbol for V4L2-PIX-FMT-SGRBG10]
Signed-off-by: Guennadi Liakhovetski <[email protected]>
Signed-off-by: Mauro Carvalho Chehab <[email protected]>
---
Documentation/DocBook/Makefile | 3 +
Documentation/DocBook/v4l/pixfmt-srggb10.xml | 90 ++++++++++++++++++++++++++
Documentation/DocBook/v4l/pixfmt-srggb8.xml | 67 +++++++++++++++++++
Documentation/DocBook/v4l/pixfmt-y10.xml | 79 ++++++++++++++++++++++
Documentation/DocBook/v4l/pixfmt.xml | 8 +--
5 files changed, 242 insertions(+), 5 deletions(-)
create mode 100644 Documentation/DocBook/v4l/pixfmt-srggb10.xml
create mode 100644 Documentation/DocBook/v4l/pixfmt-srggb8.xml
create mode 100644 Documentation/DocBook/v4l/pixfmt-y10.xml

diff --git a/Documentation/DocBook/Makefile b/Documentation/DocBook/Makefile
index 65deaba..1c796fc 100644
--- a/Documentation/DocBook/Makefile
+++ b/Documentation/DocBook/Makefile
@@ -309,6 +309,9 @@ V4L_SGMLS = \
v4l/pixfmt-yuv422p.xml \
v4l/pixfmt-yuyv.xml \
v4l/pixfmt-yvyu.xml \
+ v4l/pixfmt-srggb10.xml \
+ v4l/pixfmt-srggb8.xml \
+ v4l/pixfmt-y10.xml \
v4l/pixfmt.xml \
v4l/vidioc-cropcap.xml \
v4l/vidioc-dbg-g-register.xml \
diff --git a/Documentation/DocBook/v4l/pixfmt-srggb10.xml b/Documentation/DocBook/v4l/pixfmt-srggb10.xml
new file mode 100644
index 0000000..7b27409
--- /dev/null
+++ b/Documentation/DocBook/v4l/pixfmt-srggb10.xml
@@ -0,0 +1,90 @@
+ <refentry>
+ <refmeta>
+ <refentrytitle>V4L2_PIX_FMT_SRGGB10 ('RG10'),
+ V4L2_PIX_FMT_SGRBG10 ('BA10'),
+ V4L2_PIX_FMT_SGBRG10 ('GB10'),
+ V4L2_PIX_FMT_SBGGR10 ('BG10'),
+ </refentrytitle>
+ &manvol;
+ </refmeta>
+ <refnamediv>
+ <refname id="V4L2-PIX-FMT-SRGGB10"><constant>V4L2_PIX_FMT_SRGGB10</constant></refname>
+ <refname id="V4L2-PIX-FMT-SGRBG10"><constant>V4L2_PIX_FMT_SGRBG10</constant></refname>
+ <refname id="V4L2-PIX-FMT-SGBRG10"><constant>V4L2_PIX_FMT_SGBRG10</constant></refname>
+ <refname id="V4L2-PIX-FMT-SBGGR10"><constant>V4L2_PIX_FMT_SBGGR10</constant></refname>
+ <refpurpose>10-bit Bayer formats expanded to 16 bits</refpurpose>
+ </refnamediv>
+ <refsect1>
+ <title>Description</title>
+
+ <para>The following four pixel formats are raw sRGB / Bayer formats with
+10 bits per colour. Each colour component is stored in a 16-bit word, with 6
+unused high bits filled with zeros. Each n-pixel row contains n/2 green samples
+and n/2 blue or red samples, with alternating red and blue rows. Bytes are
+stored in memory in little endian order. They are conventionally described
+as GRGR... BGBG..., RGRG... GBGB..., etc. Below is an example of one of these
+formats</para>
+
+ <example>
+ <title><constant>V4L2_PIX_FMT_SBGGR10</constant> 4 &times; 4
+pixel image</title>
+
+ <formalpara>
+ <title>Byte Order.</title>
+ <para>Each cell is one byte, high 6 bits in high bytes are 0.
+ <informaltable frame="none">
+ <tgroup cols="5" align="center">
+ <colspec align="left" colwidth="2*" />
+ <tbody valign="top">
+ <row>
+ <entry>start&nbsp;+&nbsp;0:</entry>
+ <entry>B<subscript>00low</subscript></entry>
+ <entry>B<subscript>00high</subscript></entry>
+ <entry>G<subscript>01low</subscript></entry>
+ <entry>G<subscript>01high</subscript></entry>
+ <entry>B<subscript>02low</subscript></entry>
+ <entry>B<subscript>02high</subscript></entry>
+ <entry>G<subscript>03low</subscript></entry>
+ <entry>G<subscript>03high</subscript></entry>
+ </row>
+ <row>
+ <entry>start&nbsp;+&nbsp;8:</entry>
+ <entry>G<subscript>10low</subscript></entry>
+ <entry>G<subscript>10high</subscript></entry>
+ <entry>R<subscript>11low</subscript></entry>
+ <entry>R<subscript>11high</subscript></entry>
+ <entry>G<subscript>12low</subscript></entry>
+ <entry>G<subscript>12high</subscript></entry>
+ <entry>R<subscript>13low</subscript></entry>
+ <entry>R<subscript>13high</subscript></entry>
+ </row>
+ <row>
+ <entry>start&nbsp;+&nbsp;16:</entry>
+ <entry>B<subscript>20low</subscript></entry>
+ <entry>B<subscript>20high</subscript></entry>
+ <entry>G<subscript>21low</subscript></entry>
+ <entry>G<subscript>21high</subscript></entry>
+ <entry>B<subscript>22low</subscript></entry>
+ <entry>B<subscript>22high</subscript></entry>
+ <entry>G<subscript>23low</subscript></entry>
+ <entry>G<subscript>23high</subscript></entry>
+ </row>
+ <row>
+ <entry>start&nbsp;+&nbsp;24:</entry>
+ <entry>G<subscript>30low</subscript></entry>
+ <entry>G<subscript>30high</subscript></entry>
+ <entry>R<subscript>31low</subscript></entry>
+ <entry>R<subscript>31high</subscript></entry>
+ <entry>G<subscript>32low</subscript></entry>
+ <entry>G<subscript>32high</subscript></entry>
+ <entry>R<subscript>33low</subscript></entry>
+ <entry>R<subscript>33high</subscript></entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </informaltable>
+ </para>
+ </formalpara>
+ </example>
+ </refsect1>
+</refentry>
diff --git a/Documentation/DocBook/v4l/pixfmt-srggb8.xml b/Documentation/DocBook/v4l/pixfmt-srggb8.xml
new file mode 100644
index 0000000..2570e3b
--- /dev/null
+++ b/Documentation/DocBook/v4l/pixfmt-srggb8.xml
@@ -0,0 +1,67 @@
+ <refentry id="V4L2-PIX-FMT-SRGGB8">
+ <refmeta>
+ <refentrytitle>V4L2_PIX_FMT_SRGGB8 ('RGGB')</refentrytitle>
+ &manvol;
+ </refmeta>
+ <refnamediv>
+ <refname><constant>V4L2_PIX_FMT_SRGGB8</constant></refname>
+ <refpurpose>Bayer RGB format</refpurpose>
+ </refnamediv>
+ <refsect1>
+ <title>Description</title>
+
+ <para>This is commonly the native format of digital cameras,
+reflecting the arrangement of sensors on the CCD device. Only one red,
+green or blue value is given for each pixel. Missing components must
+be interpolated from neighbouring pixels. From left to right the first
+row consists of a red and green value, the second row of a green and
+blue value. This scheme repeats to the right and down for every two
+columns and rows.</para>
+
+ <example>
+ <title><constant>V4L2_PIX_FMT_SRGGB8</constant> 4 &times; 4
+pixel image</title>
+
+ <formalpara>
+ <title>Byte Order.</title>
+ <para>Each cell is one byte.
+ <informaltable frame="none">
+ <tgroup cols="5" align="center">
+ <colspec align="left" colwidth="2*" />
+ <tbody valign="top">
+ <row>
+ <entry>start&nbsp;+&nbsp;0:</entry>
+ <entry>R<subscript>00</subscript></entry>
+ <entry>G<subscript>01</subscript></entry>
+ <entry>R<subscript>02</subscript></entry>
+ <entry>G<subscript>03</subscript></entry>
+ </row>
+ <row>
+ <entry>start&nbsp;+&nbsp;4:</entry>
+ <entry>G<subscript>10</subscript></entry>
+ <entry>B<subscript>11</subscript></entry>
+ <entry>G<subscript>12</subscript></entry>
+ <entry>B<subscript>13</subscript></entry>
+ </row>
+ <row>
+ <entry>start&nbsp;+&nbsp;8:</entry>
+ <entry>R<subscript>20</subscript></entry>
+ <entry>G<subscript>21</subscript></entry>
+ <entry>R<subscript>22</subscript></entry>
+ <entry>G<subscript>23</subscript></entry>
+ </row>
+ <row>
+ <entry>start&nbsp;+&nbsp;12:</entry>
+ <entry>G<subscript>30</subscript></entry>
+ <entry>B<subscript>31</subscript></entry>
+ <entry>G<subscript>32</subscript></entry>
+ <entry>B<subscript>33</subscript></entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </informaltable>
+ </para>
+ </formalpara>
+ </example>
+ </refsect1>
+ </refentry>
diff --git a/Documentation/DocBook/v4l/pixfmt-y10.xml b/Documentation/DocBook/v4l/pixfmt-y10.xml
new file mode 100644
index 0000000..d065043
--- /dev/null
+++ b/Documentation/DocBook/v4l/pixfmt-y10.xml
@@ -0,0 +1,79 @@
+<refentry id="V4L2-PIX-FMT-Y10">
+ <refmeta>
+ <refentrytitle>V4L2_PIX_FMT_Y10 ('Y10 ')</refentrytitle>
+ &manvol;
+ </refmeta>
+ <refnamediv>
+ <refname><constant>V4L2_PIX_FMT_Y10</constant></refname>
+ <refpurpose>Grey-scale image</refpurpose>
+ </refnamediv>
+ <refsect1>
+ <title>Description</title>
+
+ <para>This is a grey-scale image with a depth of 10 bits per pixel. Pixels
+are stored in 16-bit words with unused high bits padded with 0. The least
+significant byte is stored at lower memory addresses (little-endian).</para>
+
+ <example>
+ <title><constant>V4L2_PIX_FMT_Y10</constant> 4 &times; 4
+pixel image</title>
+
+ <formalpara>
+ <title>Byte Order.</title>
+ <para>Each cell is one byte.
+ <informaltable frame="none">
+ <tgroup cols="9" align="center">
+ <colspec align="left" colwidth="2*" />
+ <tbody valign="top">
+ <row>
+ <entry>start&nbsp;+&nbsp;0:</entry>
+ <entry>Y'<subscript>00low</subscript></entry>
+ <entry>Y'<subscript>00high</subscript></entry>
+ <entry>Y'<subscript>01low</subscript></entry>
+ <entry>Y'<subscript>01high</subscript></entry>
+ <entry>Y'<subscript>02low</subscript></entry>
+ <entry>Y'<subscript>02high</subscript></entry>
+ <entry>Y'<subscript>03low</subscript></entry>
+ <entry>Y'<subscript>03high</subscript></entry>
+ </row>
+ <row>
+ <entry>start&nbsp;+&nbsp;8:</entry>
+ <entry>Y'<subscript>10low</subscript></entry>
+ <entry>Y'<subscript>10high</subscript></entry>
+ <entry>Y'<subscript>11low</subscript></entry>
+ <entry>Y'<subscript>11high</subscript></entry>
+ <entry>Y'<subscript>12low</subscript></entry>
+ <entry>Y'<subscript>12high</subscript></entry>
+ <entry>Y'<subscript>13low</subscript></entry>
+ <entry>Y'<subscript>13high</subscript></entry>
+ </row>
+ <row>
+ <entry>start&nbsp;+&nbsp;16:</entry>
+ <entry>Y'<subscript>20low</subscript></entry>
+ <entry>Y'<subscript>20high</subscript></entry>
+ <entry>Y'<subscript>21low</subscript></entry>
+ <entry>Y'<subscript>21high</subscript></entry>
+ <entry>Y'<subscript>22low</subscript></entry>
+ <entry>Y'<subscript>22high</subscript></entry>
+ <entry>Y'<subscript>23low</subscript></entry>
+ <entry>Y'<subscript>23high</subscript></entry>
+ </row>
+ <row>
+ <entry>start&nbsp;+&nbsp;24:</entry>
+ <entry>Y'<subscript>30low</subscript></entry>
+ <entry>Y'<subscript>30high</subscript></entry>
+ <entry>Y'<subscript>31low</subscript></entry>
+ <entry>Y'<subscript>31high</subscript></entry>
+ <entry>Y'<subscript>32low</subscript></entry>
+ <entry>Y'<subscript>32high</subscript></entry>
+ <entry>Y'<subscript>33low</subscript></entry>
+ <entry>Y'<subscript>33high</subscript></entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </informaltable>
+ </para>
+ </formalpara>
+ </example>
+ </refsect1>
+</refentry>
diff --git a/Documentation/DocBook/v4l/pixfmt.xml b/Documentation/DocBook/v4l/pixfmt.xml
index 6e38f50..7e2c38e 100644
--- a/Documentation/DocBook/v4l/pixfmt.xml
+++ b/Documentation/DocBook/v4l/pixfmt.xml
@@ -566,7 +566,9 @@ access the palette, this must be done with ioctls of the Linux framebuffer API.<
&sub-sbggr8;
&sub-sgbrg8;
&sub-sgrbg8;
+ &sub-srggb8;
&sub-sbggr16;
+ &sub-srggb10;
</section>

<section id="yuv-formats">
@@ -589,6 +591,7 @@ information.</para>

&sub-packed-yuv;
&sub-grey;
+ &sub-y10;
&sub-y16;
&sub-yuyv;
&sub-uyvy;
@@ -710,11 +713,6 @@ kernel sources in the file <filename>Documentation/video4linux/cx2341x/README.hm
<entry>'S561'</entry>
<entry>Compressed GBRG Bayer format used by the gspca driver.</entry>
</row>
- <row id="V4L2-PIX-FMT-SGRBG10">
- <entry><constant>V4L2_PIX_FMT_SGRBG10</constant></entry>
- <entry>'DA10'</entry>
- <entry>10 bit raw Bayer, expanded to 16 bits.</entry>
- </row>
<row id="V4L2-PIX-FMT-SGRBG10DPCM8">
<entry><constant>V4L2_PIX_FMT_SGRBG10DPCM8</constant></entry>
<entry>'DB10'</entry>
--
1.6.6.1


2010-02-17 20:32:28

by Mauro Carvalho Chehab

[permalink] [raw]
Subject: Re: [PATCH 4/4] V4L/DVB: v4l: document new Bayer and monochrome pixel formats

Randy,

Mauro Carvalho Chehab wrote:
> Document all four 10-bit Bayer formats, 10-bit monochrome and a missing
> 8-bit Bayer formats.
>
> [[email protected]: remove duplicated symbol for V4L2-PIX-FMT-SGRBG10]
> Signed-off-by: Guennadi Liakhovetski <[email protected]>
> Signed-off-by: Mauro Carvalho Chehab <[email protected]>

Although patch 0/4 has the correct authorship:

Guennadi Liakhovetski (1):
V4L/DVB: v4l: document new Bayer and monochrome pixel formats

Unfortunately git format-patch didn't preserve the authorship on this patch
(or my emailer removed the additional From:)

Please fix it before applying:

From: Guennadi Liakhovetski <[email protected]>

If you prefer, I can apply this series on my tree after your ack.

Cheers,
Mauro.

> ---
> Documentation/DocBook/Makefile | 3 +
> Documentation/DocBook/v4l/pixfmt-srggb10.xml | 90 ++++++++++++++++++++++++++
> Documentation/DocBook/v4l/pixfmt-srggb8.xml | 67 +++++++++++++++++++
> Documentation/DocBook/v4l/pixfmt-y10.xml | 79 ++++++++++++++++++++++
> Documentation/DocBook/v4l/pixfmt.xml | 8 +--
> 5 files changed, 242 insertions(+), 5 deletions(-)
> create mode 100644 Documentation/DocBook/v4l/pixfmt-srggb10.xml
> create mode 100644 Documentation/DocBook/v4l/pixfmt-srggb8.xml
> create mode 100644 Documentation/DocBook/v4l/pixfmt-y10.xml
>
> diff --git a/Documentation/DocBook/Makefile b/Documentation/DocBook/Makefile
> index 65deaba..1c796fc 100644
> --- a/Documentation/DocBook/Makefile
> +++ b/Documentation/DocBook/Makefile
> @@ -309,6 +309,9 @@ V4L_SGMLS = \
> v4l/pixfmt-yuv422p.xml \
> v4l/pixfmt-yuyv.xml \
> v4l/pixfmt-yvyu.xml \
> + v4l/pixfmt-srggb10.xml \
> + v4l/pixfmt-srggb8.xml \
> + v4l/pixfmt-y10.xml \
> v4l/pixfmt.xml \
> v4l/vidioc-cropcap.xml \
> v4l/vidioc-dbg-g-register.xml \
> diff --git a/Documentation/DocBook/v4l/pixfmt-srggb10.xml b/Documentation/DocBook/v4l/pixfmt-srggb10.xml
> new file mode 100644
> index 0000000..7b27409
> --- /dev/null
> +++ b/Documentation/DocBook/v4l/pixfmt-srggb10.xml
> @@ -0,0 +1,90 @@
> + <refentry>
> + <refmeta>
> + <refentrytitle>V4L2_PIX_FMT_SRGGB10 ('RG10'),
> + V4L2_PIX_FMT_SGRBG10 ('BA10'),
> + V4L2_PIX_FMT_SGBRG10 ('GB10'),
> + V4L2_PIX_FMT_SBGGR10 ('BG10'),
> + </refentrytitle>
> + &manvol;
> + </refmeta>
> + <refnamediv>
> + <refname id="V4L2-PIX-FMT-SRGGB10"><constant>V4L2_PIX_FMT_SRGGB10</constant></refname>
> + <refname id="V4L2-PIX-FMT-SGRBG10"><constant>V4L2_PIX_FMT_SGRBG10</constant></refname>
> + <refname id="V4L2-PIX-FMT-SGBRG10"><constant>V4L2_PIX_FMT_SGBRG10</constant></refname>
> + <refname id="V4L2-PIX-FMT-SBGGR10"><constant>V4L2_PIX_FMT_SBGGR10</constant></refname>
> + <refpurpose>10-bit Bayer formats expanded to 16 bits</refpurpose>
> + </refnamediv>
> + <refsect1>
> + <title>Description</title>
> +
> + <para>The following four pixel formats are raw sRGB / Bayer formats with
> +10 bits per colour. Each colour component is stored in a 16-bit word, with 6
> +unused high bits filled with zeros. Each n-pixel row contains n/2 green samples
> +and n/2 blue or red samples, with alternating red and blue rows. Bytes are
> +stored in memory in little endian order. They are conventionally described
> +as GRGR... BGBG..., RGRG... GBGB..., etc. Below is an example of one of these
> +formats</para>
> +
> + <example>
> + <title><constant>V4L2_PIX_FMT_SBGGR10</constant> 4 &times; 4
> +pixel image</title>
> +
> + <formalpara>
> + <title>Byte Order.</title>
> + <para>Each cell is one byte, high 6 bits in high bytes are 0.
> + <informaltable frame="none">
> + <tgroup cols="5" align="center">
> + <colspec align="left" colwidth="2*" />
> + <tbody valign="top">
> + <row>
> + <entry>start&nbsp;+&nbsp;0:</entry>
> + <entry>B<subscript>00low</subscript></entry>
> + <entry>B<subscript>00high</subscript></entry>
> + <entry>G<subscript>01low</subscript></entry>
> + <entry>G<subscript>01high</subscript></entry>
> + <entry>B<subscript>02low</subscript></entry>
> + <entry>B<subscript>02high</subscript></entry>
> + <entry>G<subscript>03low</subscript></entry>
> + <entry>G<subscript>03high</subscript></entry>
> + </row>
> + <row>
> + <entry>start&nbsp;+&nbsp;8:</entry>
> + <entry>G<subscript>10low</subscript></entry>
> + <entry>G<subscript>10high</subscript></entry>
> + <entry>R<subscript>11low</subscript></entry>
> + <entry>R<subscript>11high</subscript></entry>
> + <entry>G<subscript>12low</subscript></entry>
> + <entry>G<subscript>12high</subscript></entry>
> + <entry>R<subscript>13low</subscript></entry>
> + <entry>R<subscript>13high</subscript></entry>
> + </row>
> + <row>
> + <entry>start&nbsp;+&nbsp;16:</entry>
> + <entry>B<subscript>20low</subscript></entry>
> + <entry>B<subscript>20high</subscript></entry>
> + <entry>G<subscript>21low</subscript></entry>
> + <entry>G<subscript>21high</subscript></entry>
> + <entry>B<subscript>22low</subscript></entry>
> + <entry>B<subscript>22high</subscript></entry>
> + <entry>G<subscript>23low</subscript></entry>
> + <entry>G<subscript>23high</subscript></entry>
> + </row>
> + <row>
> + <entry>start&nbsp;+&nbsp;24:</entry>
> + <entry>G<subscript>30low</subscript></entry>
> + <entry>G<subscript>30high</subscript></entry>
> + <entry>R<subscript>31low</subscript></entry>
> + <entry>R<subscript>31high</subscript></entry>
> + <entry>G<subscript>32low</subscript></entry>
> + <entry>G<subscript>32high</subscript></entry>
> + <entry>R<subscript>33low</subscript></entry>
> + <entry>R<subscript>33high</subscript></entry>
> + </row>
> + </tbody>
> + </tgroup>
> + </informaltable>
> + </para>
> + </formalpara>
> + </example>
> + </refsect1>
> +</refentry>
> diff --git a/Documentation/DocBook/v4l/pixfmt-srggb8.xml b/Documentation/DocBook/v4l/pixfmt-srggb8.xml
> new file mode 100644
> index 0000000..2570e3b
> --- /dev/null
> +++ b/Documentation/DocBook/v4l/pixfmt-srggb8.xml
> @@ -0,0 +1,67 @@
> + <refentry id="V4L2-PIX-FMT-SRGGB8">
> + <refmeta>
> + <refentrytitle>V4L2_PIX_FMT_SRGGB8 ('RGGB')</refentrytitle>
> + &manvol;
> + </refmeta>
> + <refnamediv>
> + <refname><constant>V4L2_PIX_FMT_SRGGB8</constant></refname>
> + <refpurpose>Bayer RGB format</refpurpose>
> + </refnamediv>
> + <refsect1>
> + <title>Description</title>
> +
> + <para>This is commonly the native format of digital cameras,
> +reflecting the arrangement of sensors on the CCD device. Only one red,
> +green or blue value is given for each pixel. Missing components must
> +be interpolated from neighbouring pixels. From left to right the first
> +row consists of a red and green value, the second row of a green and
> +blue value. This scheme repeats to the right and down for every two
> +columns and rows.</para>
> +
> + <example>
> + <title><constant>V4L2_PIX_FMT_SRGGB8</constant> 4 &times; 4
> +pixel image</title>
> +
> + <formalpara>
> + <title>Byte Order.</title>
> + <para>Each cell is one byte.
> + <informaltable frame="none">
> + <tgroup cols="5" align="center">
> + <colspec align="left" colwidth="2*" />
> + <tbody valign="top">
> + <row>
> + <entry>start&nbsp;+&nbsp;0:</entry>
> + <entry>R<subscript>00</subscript></entry>
> + <entry>G<subscript>01</subscript></entry>
> + <entry>R<subscript>02</subscript></entry>
> + <entry>G<subscript>03</subscript></entry>
> + </row>
> + <row>
> + <entry>start&nbsp;+&nbsp;4:</entry>
> + <entry>G<subscript>10</subscript></entry>
> + <entry>B<subscript>11</subscript></entry>
> + <entry>G<subscript>12</subscript></entry>
> + <entry>B<subscript>13</subscript></entry>
> + </row>
> + <row>
> + <entry>start&nbsp;+&nbsp;8:</entry>
> + <entry>R<subscript>20</subscript></entry>
> + <entry>G<subscript>21</subscript></entry>
> + <entry>R<subscript>22</subscript></entry>
> + <entry>G<subscript>23</subscript></entry>
> + </row>
> + <row>
> + <entry>start&nbsp;+&nbsp;12:</entry>
> + <entry>G<subscript>30</subscript></entry>
> + <entry>B<subscript>31</subscript></entry>
> + <entry>G<subscript>32</subscript></entry>
> + <entry>B<subscript>33</subscript></entry>
> + </row>
> + </tbody>
> + </tgroup>
> + </informaltable>
> + </para>
> + </formalpara>
> + </example>
> + </refsect1>
> + </refentry>
> diff --git a/Documentation/DocBook/v4l/pixfmt-y10.xml b/Documentation/DocBook/v4l/pixfmt-y10.xml
> new file mode 100644
> index 0000000..d065043
> --- /dev/null
> +++ b/Documentation/DocBook/v4l/pixfmt-y10.xml
> @@ -0,0 +1,79 @@
> +<refentry id="V4L2-PIX-FMT-Y10">
> + <refmeta>
> + <refentrytitle>V4L2_PIX_FMT_Y10 ('Y10 ')</refentrytitle>
> + &manvol;
> + </refmeta>
> + <refnamediv>
> + <refname><constant>V4L2_PIX_FMT_Y10</constant></refname>
> + <refpurpose>Grey-scale image</refpurpose>
> + </refnamediv>
> + <refsect1>
> + <title>Description</title>
> +
> + <para>This is a grey-scale image with a depth of 10 bits per pixel. Pixels
> +are stored in 16-bit words with unused high bits padded with 0. The least
> +significant byte is stored at lower memory addresses (little-endian).</para>
> +
> + <example>
> + <title><constant>V4L2_PIX_FMT_Y10</constant> 4 &times; 4
> +pixel image</title>
> +
> + <formalpara>
> + <title>Byte Order.</title>
> + <para>Each cell is one byte.
> + <informaltable frame="none">
> + <tgroup cols="9" align="center">
> + <colspec align="left" colwidth="2*" />
> + <tbody valign="top">
> + <row>
> + <entry>start&nbsp;+&nbsp;0:</entry>
> + <entry>Y'<subscript>00low</subscript></entry>
> + <entry>Y'<subscript>00high</subscript></entry>
> + <entry>Y'<subscript>01low</subscript></entry>
> + <entry>Y'<subscript>01high</subscript></entry>
> + <entry>Y'<subscript>02low</subscript></entry>
> + <entry>Y'<subscript>02high</subscript></entry>
> + <entry>Y'<subscript>03low</subscript></entry>
> + <entry>Y'<subscript>03high</subscript></entry>
> + </row>
> + <row>
> + <entry>start&nbsp;+&nbsp;8:</entry>
> + <entry>Y'<subscript>10low</subscript></entry>
> + <entry>Y'<subscript>10high</subscript></entry>
> + <entry>Y'<subscript>11low</subscript></entry>
> + <entry>Y'<subscript>11high</subscript></entry>
> + <entry>Y'<subscript>12low</subscript></entry>
> + <entry>Y'<subscript>12high</subscript></entry>
> + <entry>Y'<subscript>13low</subscript></entry>
> + <entry>Y'<subscript>13high</subscript></entry>
> + </row>
> + <row>
> + <entry>start&nbsp;+&nbsp;16:</entry>
> + <entry>Y'<subscript>20low</subscript></entry>
> + <entry>Y'<subscript>20high</subscript></entry>
> + <entry>Y'<subscript>21low</subscript></entry>
> + <entry>Y'<subscript>21high</subscript></entry>
> + <entry>Y'<subscript>22low</subscript></entry>
> + <entry>Y'<subscript>22high</subscript></entry>
> + <entry>Y'<subscript>23low</subscript></entry>
> + <entry>Y'<subscript>23high</subscript></entry>
> + </row>
> + <row>
> + <entry>start&nbsp;+&nbsp;24:</entry>
> + <entry>Y'<subscript>30low</subscript></entry>
> + <entry>Y'<subscript>30high</subscript></entry>
> + <entry>Y'<subscript>31low</subscript></entry>
> + <entry>Y'<subscript>31high</subscript></entry>
> + <entry>Y'<subscript>32low</subscript></entry>
> + <entry>Y'<subscript>32high</subscript></entry>
> + <entry>Y'<subscript>33low</subscript></entry>
> + <entry>Y'<subscript>33high</subscript></entry>
> + </row>
> + </tbody>
> + </tgroup>
> + </informaltable>
> + </para>
> + </formalpara>
> + </example>
> + </refsect1>
> +</refentry>
> diff --git a/Documentation/DocBook/v4l/pixfmt.xml b/Documentation/DocBook/v4l/pixfmt.xml
> index 6e38f50..7e2c38e 100644
> --- a/Documentation/DocBook/v4l/pixfmt.xml
> +++ b/Documentation/DocBook/v4l/pixfmt.xml
> @@ -566,7 +566,9 @@ access the palette, this must be done with ioctls of the Linux framebuffer API.<
> &sub-sbggr8;
> &sub-sgbrg8;
> &sub-sgrbg8;
> + &sub-srggb8;
> &sub-sbggr16;
> + &sub-srggb10;
> </section>
>
> <section id="yuv-formats">
> @@ -589,6 +591,7 @@ information.</para>
>
> &sub-packed-yuv;
> &sub-grey;
> + &sub-y10;
> &sub-y16;
> &sub-yuyv;
> &sub-uyvy;
> @@ -710,11 +713,6 @@ kernel sources in the file <filename>Documentation/video4linux/cx2341x/README.hm
> <entry>'S561'</entry>
> <entry>Compressed GBRG Bayer format used by the gspca driver.</entry>
> </row>
> - <row id="V4L2-PIX-FMT-SGRBG10">
> - <entry><constant>V4L2_PIX_FMT_SGRBG10</constant></entry>
> - <entry>'DA10'</entry>
> - <entry>10 bit raw Bayer, expanded to 16 bits.</entry>
> - </row>
> <row id="V4L2-PIX-FMT-SGRBG10DPCM8">
> <entry><constant>V4L2_PIX_FMT_SGRBG10DPCM8</constant></entry>
> <entry>'DB10'</entry>


--

Cheers,
Mauro

2010-02-17 20:59:48

by Guennadi Liakhovetski

[permalink] [raw]
Subject: Re: [PATCH 4/4] V4L/DVB: v4l: document new Bayer and monochrome pixel formats

On Wed, 17 Feb 2010, Mauro Carvalho Chehab wrote:

> Document all four 10-bit Bayer formats, 10-bit monochrome and a missing
> 8-bit Bayer formats.
>
> [[email protected]: remove duplicated symbol for V4L2-PIX-FMT-SGRBG10]
> Signed-off-by: Guennadi Liakhovetski <[email protected]>
> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
> ---
> Documentation/DocBook/Makefile | 3 +
> Documentation/DocBook/v4l/pixfmt-srggb10.xml | 90 ++++++++++++++++++++++++++
> Documentation/DocBook/v4l/pixfmt-srggb8.xml | 67 +++++++++++++++++++
> Documentation/DocBook/v4l/pixfmt-y10.xml | 79 ++++++++++++++++++++++
> Documentation/DocBook/v4l/pixfmt.xml | 8 +--
> 5 files changed, 242 insertions(+), 5 deletions(-)
> create mode 100644 Documentation/DocBook/v4l/pixfmt-srggb10.xml
> create mode 100644 Documentation/DocBook/v4l/pixfmt-srggb8.xml
> create mode 100644 Documentation/DocBook/v4l/pixfmt-y10.xml
>
> diff --git a/Documentation/DocBook/Makefile b/Documentation/DocBook/Makefile
> index 65deaba..1c796fc 100644
> --- a/Documentation/DocBook/Makefile
> +++ b/Documentation/DocBook/Makefile
> @@ -309,6 +309,9 @@ V4L_SGMLS = \
> v4l/pixfmt-yuv422p.xml \
> v4l/pixfmt-yuyv.xml \
> v4l/pixfmt-yvyu.xml \
> + v4l/pixfmt-srggb10.xml \
> + v4l/pixfmt-srggb8.xml \
> + v4l/pixfmt-y10.xml \

Mauro, why didn't you put them next to similar formats, as in my original
patch?

> v4l/pixfmt.xml \
> v4l/vidioc-cropcap.xml \
> v4l/vidioc-dbg-g-register.xml \

Thanks
Guennadi
---
Guennadi Liakhovetski

2010-02-17 21:19:41

by Mauro Carvalho Chehab

[permalink] [raw]
Subject: Re: [PATCH 4/4] V4L/DVB: v4l: document new Bayer and monochrome pixel formats

Guennadi Liakhovetski wrote:
> On Wed, 17 Feb 2010, Mauro Carvalho Chehab wrote:
>
>> Document all four 10-bit Bayer formats, 10-bit monochrome and a missing
>> 8-bit Bayer formats.
>>
>> [[email protected]: remove duplicated symbol for V4L2-PIX-FMT-SGRBG10]
>> Signed-off-by: Guennadi Liakhovetski <[email protected]>
>> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
>> ---
>> Documentation/DocBook/Makefile | 3 +
>> Documentation/DocBook/v4l/pixfmt-srggb10.xml | 90 ++++++++++++++++++++++++++
>> Documentation/DocBook/v4l/pixfmt-srggb8.xml | 67 +++++++++++++++++++
>> Documentation/DocBook/v4l/pixfmt-y10.xml | 79 ++++++++++++++++++++++
>> Documentation/DocBook/v4l/pixfmt.xml | 8 +--
>> 5 files changed, 242 insertions(+), 5 deletions(-)
>> create mode 100644 Documentation/DocBook/v4l/pixfmt-srggb10.xml
>> create mode 100644 Documentation/DocBook/v4l/pixfmt-srggb8.xml
>> create mode 100644 Documentation/DocBook/v4l/pixfmt-y10.xml
>>
>> diff --git a/Documentation/DocBook/Makefile b/Documentation/DocBook/Makefile
>> index 65deaba..1c796fc 100644
>> --- a/Documentation/DocBook/Makefile
>> +++ b/Documentation/DocBook/Makefile
>> @@ -309,6 +309,9 @@ V4L_SGMLS = \
>> v4l/pixfmt-yuv422p.xml \
>> v4l/pixfmt-yuyv.xml \
>> v4l/pixfmt-yvyu.xml \
>> + v4l/pixfmt-srggb10.xml \
>> + v4l/pixfmt-srggb8.xml \
>> + v4l/pixfmt-y10.xml \
>
> Mauro, why didn't you put them next to similar formats, as in my original
> patch?

Guennadi,

Your original patch were against the out-of-tree "media-specs/Makefile", present
only at the -hg tree.

The way my conversion scripts work is that they'll convert the patches into a
patch that can be applied directly into -git. Among other things, all
changes on files outside the kernel tree are simply discarded by them.

Also, before patch 2/4, such addition won't be possible.

So, what happened here is that, after importing from your hg tree, I noticed
-git compilation breakage. So, I ported the autobuild bits for media-entities & co,
manually added the missing pixfmt xml's and removed the duplicate symbol for one
of the bayer standards.

That's said, I don't really have any preference about the order where the files appear
at the Makefile. I have no objection if you prefer to add them on any other random order.

In a matter of fact, IMO, the better is to later write a patch that discards
this static list of files, auto-generating it dynamically.

So, if you really prefer a different order, please re-submit another version for this patch.

Cheers,
Mauro

2010-02-17 21:36:36

by Guennadi Liakhovetski

[permalink] [raw]
Subject: Re: [PATCH 4/4] V4L/DVB: v4l: document new Bayer and monochrome pixel formats

On Wed, 17 Feb 2010, Mauro Carvalho Chehab wrote:

> Guennadi,
>
> Your original patch were against the out-of-tree "media-specs/Makefile", present
> only at the -hg tree.
>
> The way my conversion scripts work is that they'll convert the patches into a
> patch that can be applied directly into -git. Among other things, all
> changes on files outside the kernel tree are simply discarded by them.
>
> Also, before patch 2/4, such addition won't be possible.
>
> So, what happened here is that, after importing from your hg tree, I noticed
> -git compilation breakage. So, I ported the autobuild bits for media-entities & co,
> manually added the missing pixfmt xml's and removed the duplicate symbol for one
> of the bayer standards.
>
> That's said, I don't really have any preference about the order where the files appear
> at the Makefile. I have no objection if you prefer to add them on any other random order.
>
> In a matter of fact, IMO, the better is to later write a patch that discards
> this static list of files, auto-generating it dynamically.
>
> So, if you really prefer a different order, please re-submit another version for this patch.

No, no problem with me, it doesn't bother me _that_ much;) Thanks for
fixing stuff!

Thanks
Guennadi
---
Guennadi Liakhovetski