On 05/04/2016 07:07 PM, Nick Dyer wrote:
> This will be used for output of raw touch data.
> 
> Signed-off-by: Nick Dyer <nick.d...@itdev.co.uk>
> ---
>  Documentation/DocBook/media/v4l/pixfmt-ys16.xml | 79 
> +++++++++++++++++++++++++
>  Documentation/DocBook/media/v4l/pixfmt.xml      |  1 +
>  drivers/media/v4l2-core/v4l2-ioctl.c            |  1 +
>  include/uapi/linux/videodev2.h                  |  1 +
>  4 files changed, 82 insertions(+)
>  create mode 100644 Documentation/DocBook/media/v4l/pixfmt-ys16.xml
> 
> diff --git a/Documentation/DocBook/media/v4l/pixfmt-ys16.xml 
> b/Documentation/DocBook/media/v4l/pixfmt-ys16.xml
> new file mode 100644
> index 0000000..f92d65e
> --- /dev/null
> +++ b/Documentation/DocBook/media/v4l/pixfmt-ys16.xml
> @@ -0,0 +1,79 @@
> +<refentry id="V4L2-PIX-FMT-YS16">
> +  <refmeta>
> +    <refentrytitle>V4L2_PIX_FMT_YS16 ('YS16')</refentrytitle>
> +    &manvol;
> +  </refmeta>
> +  <refnamediv>
> +    <refname><constant>V4L2_PIX_FMT_YS16</constant></refname>
> +    <refpurpose>Grey-scale image</refpurpose>
> +  </refnamediv>
> +  <refsect1>
> +    <title>Description</title>
> +
> +    <para>This is a signed grey-scale image with a depth of 16 bits per
> +pixel. The most significant byte is stored at higher memory addresses
> +(little-endian).</para>

I'm not sure this should be described in terms of grey-scale, since negative
values make no sense for that. How are these values supposed to be interpreted
if you want to display them? -32768 == black and 32767 is white?

Regards,

        Hans

> +
> +    <example>
> +      <title><constant>V4L2_PIX_FMT_YS16</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/media/v4l/pixfmt.xml 
> b/Documentation/DocBook/media/v4l/pixfmt.xml
> index d871245..6f7aa0e 100644
> --- a/Documentation/DocBook/media/v4l/pixfmt.xml
> +++ b/Documentation/DocBook/media/v4l/pixfmt.xml
> @@ -1619,6 +1619,7 @@ information.</para>
>      &sub-y12;
>      &sub-y10b;
>      &sub-y16;
> +    &sub-ys16;
>      &sub-y16-be;
>      &sub-uv8;
>      &sub-yuyv;
> diff --git a/drivers/media/v4l2-core/v4l2-ioctl.c 
> b/drivers/media/v4l2-core/v4l2-ioctl.c
> index 8a018c6..c7dabaa 100644
> --- a/drivers/media/v4l2-core/v4l2-ioctl.c
> +++ b/drivers/media/v4l2-core/v4l2-ioctl.c
> @@ -1154,6 +1154,7 @@ static void v4l_fill_fmtdesc(struct v4l2_fmtdesc *fmt)
>       case V4L2_PIX_FMT_Y10:          descr = "10-bit Greyscale"; break;
>       case V4L2_PIX_FMT_Y12:          descr = "12-bit Greyscale"; break;
>       case V4L2_PIX_FMT_Y16:          descr = "16-bit Greyscale"; break;
> +     case V4L2_PIX_FMT_YS16:         descr = "16-bit Greyscale (Signed)"; 
> break;
>       case V4L2_PIX_FMT_Y16_BE:       descr = "16-bit Greyscale BE"; break;
>       case V4L2_PIX_FMT_Y10BPACK:     descr = "10-bit Greyscale (Packed)"; 
> break;
>       case V4L2_PIX_FMT_PAL8:         descr = "8-bit Palette"; break;
> diff --git a/include/uapi/linux/videodev2.h b/include/uapi/linux/videodev2.h
> index 14cd5eb..ab577dd 100644
> --- a/include/uapi/linux/videodev2.h
> +++ b/include/uapi/linux/videodev2.h
> @@ -496,6 +496,7 @@ struct v4l2_pix_format {
>  #define V4L2_PIX_FMT_Y12     v4l2_fourcc('Y', '1', '2', ' ') /* 12  
> Greyscale     */
>  #define V4L2_PIX_FMT_Y16     v4l2_fourcc('Y', '1', '6', ' ') /* 16  
> Greyscale     */
>  #define V4L2_PIX_FMT_Y16_BE  v4l2_fourcc_be('Y', '1', '6', ' ') /* 16  
> Greyscale BE  */
> +#define V4L2_PIX_FMT_YS16    v4l2_fourcc('Y', 'S', '1', '6') /* signed 
> 16-bit Greyscale */
>  
>  /* Grey bit-packed formats */
>  #define V4L2_PIX_FMT_Y10BPACK    v4l2_fourcc('Y', '1', '0', 'B') /* 10  
> Greyscale bit-packed */
> 
--
To unsubscribe from this list: send the line "unsubscribe linux-media" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to