Hi Hans,

Thank you for the patch.

On Monday 12 August 2013 12:58:32 Hans Verkuil wrote:
> From: Hans Verkuil <hans.verk...@cisco.com>
> 
> Signed-off-by: Hans Verkuil <hans.verk...@cisco.com>
> ---
>  Documentation/DocBook/media/v4l/v4l2.xml           |   2 +
>  .../DocBook/media/v4l/vidioc-g-matrix.xml          | 115 +++++++++++++
>  .../DocBook/media/v4l/vidioc-query-matrix.xml      | 178 ++++++++++++++++++
>  3 files changed, 295 insertions(+)
>  create mode 100644 Documentation/DocBook/media/v4l/vidioc-g-matrix.xml
>  create mode 100644 Documentation/DocBook/media/v4l/vidioc-query-matrix.xml

[snip]

> diff --git a/Documentation/DocBook/media/v4l/vidioc-query-matrix.xml
> b/Documentation/DocBook/media/v4l/vidioc-query-matrix.xml new file mode
> 100644
> index 0000000..c2845c7
> --- /dev/null
> +++ b/Documentation/DocBook/media/v4l/vidioc-query-matrix.xml
> @@ -0,0 +1,178 @@
> +<refentry id="vidioc-query-matrix">
> +  <refmeta>
> +    <refentrytitle>ioctl VIDIOC_QUERY_MATRIX</refentrytitle>
> +    &manvol;
> +  </refmeta>
> +
> +  <refnamediv>
> +    <refname>VIDIOC_QUERY_MATRIX</refname>
> +    <refpurpose>Query the attributes of a matrix</refpurpose>
> +  </refnamediv>
> +
> +  <refsynopsisdiv>
> +    <funcsynopsis>
> +      <funcprototype>
> +     <funcdef>int <function>ioctl</function></funcdef>
> +     <paramdef>int <parameter>fd</parameter></paramdef>
> +     <paramdef>int <parameter>request</parameter></paramdef>
> +     <paramdef>struct v4l2_query_matrix
> +*<parameter>argp</parameter></paramdef>
> +      </funcprototype>
> +    </funcsynopsis>
> +  </refsynopsisdiv>
> +
> +  <refsect1>
> +    <title>Arguments</title>
> +
> +    <variablelist>
> +      <varlistentry>
> +     <term><parameter>fd</parameter></term>
> +     <listitem>
> +       <para>&fd;</para>
> +     </listitem>
> +      </varlistentry>
> +      <varlistentry>
> +     <term><parameter>request</parameter></term>
> +     <listitem>
> +       <para>VIDIOC_QUERY_MATRIX</para>
> +     </listitem>
> +      </varlistentry>
> +      <varlistentry>
> +     <term><parameter>argp</parameter></term>
> +     <listitem>
> +       <para></para>
> +     </listitem>
> +      </varlistentry>
> +    </variablelist>
> +  </refsect1>
> +
> +  <refsect1>
> +    <title>Description</title>
> +
> +    <para>Query the attributes of a matrix. The application fills in the
> +    <structfield>type</structfield> and optionally the
> <structfield>ref</structfield>
> +    fields of &v4l2-query-matrix;. All other fields will be returned by the
> driver.
> +    </para>
> +
> +    <table frame="none" pgwide="1" id="v4l2-query-matrix">
> +      <title>struct <structname>v4l2_query_matrix</structname></title>
> +      <tgroup cols="4">
> +     &cs-str;
> +     <tbody valign="top">
> +       <row>
> +         <entry>__u32</entry>
> +         <entry><structfield>type</structfield></entry>
> +            <entry></entry>
> +         <entry>Type of the matrix, see <xref linkend="v4l2-matrix-type"
> />.</entry> +   </row>
> +       <row>
> +         <entry>union</entry>
> +         <entry><structfield>ref</structfield></entry>
> +            <entry></entry>
> +         <entry>This union makes it possible to identify the object owning 
> the
> +         matrix. Currently the only defined matrix types are identified
> through
> +         the filehandle used to call the ioctl, so this union isn't used
> (yet).</entry>
> +       </row>
> +       <row>
> +         <entry>__u32</entry>
> +         <entry><structfield>columns</structfield></entry>
> +            <entry></entry>
> +         <entry>Number of columns in the matrix.</entry>
> +       </row>
> +       <row>
> +         <entry>__u32</entry>
> +         <entry><structfield>rows</structfield></entry>
> +            <entry></entry>
> +         <entry>Number of rows in the matrix.</entry>
> +       </row>
> +       <row>
> +         <entry>union</entry>
> +         <entry><structfield>elem_min</structfield></entry>
> +            <entry></entry>
> +            <entry></entry>
> +       </row>
> +       <row>
> +         <entry></entry>
> +            <entry>__s64</entry>
> +         <entry><structfield>val</structfield></entry>
> +            <entry>The minimal signed value of each matrix element.</entry>
> +       </row>
> +       <row>
> +         <entry></entry>
> +            <entry>__u64</entry>
> +         <entry><structfield>uval</structfield></entry>
> +            <entry>The minimal unsigned value of each matrix
> element.</entry>
> +       </row>
> +       <row>
> +         <entry>union</entry>
> +         <entry><structfield>elem_max</structfield></entry>
> +            <entry></entry>
> +            <entry></entry>
> +       </row>
> +       <row>
> +         <entry></entry>
> +            <entry>__s64</entry>
> +         <entry><structfield>val</structfield></entry>
> +            <entry>The maximal signed value of each matrix element.</entry>
> +       </row>
> +       <row>
> +         <entry></entry>
> +            <entry>__u64</entry>
> +         <entry><structfield>uval</structfield></entry>
> +            <entry>The maximal unsigned value of each matrix
> element.</entry>
> +       </row>
> +       <row>
> +         <entry>__u32</entry>
> +         <entry><structfield>elem_size</structfield></entry>
> +            <entry></entry>
> +         <entry>The size in bytes of a single matrix element.
> +         The full matrix size will be <structfield>columns</structfield> *
> +         <structfield>rows</structfield> *
> <structfield>elem_size</structfield>.</entry>
> +       </row>
> +       <row>
> +         <entry>__u32</entry>
> +         <entry><structfield>reserved</structfield>[12]</entry>
> +            <entry></entry>
> +         <entry>Reserved for future extensions. Drivers must set
> +         the array to zero.</entry>
> +       </row>
> +     </tbody>
> +      </tgroup>
> +    </table>
> +
> +    <table pgwide="1" frame="none" id="v4l2-matrix-type">
> +      <title>Matrix Types</title>
> +      <tgroup cols="2" align="left">
> +     <colspec colwidth="30*" />
> +     <colspec colwidth="55*" />
> +     <thead>
> +       <row>
> +         <entry>Type</entry>
> +         <entry>Description</entry>
> +       </row>
> +     </thead>
> +     <tbody valign="top">
> +       <row>
> +         <entry><constant>V4L2_MATRIX_T_MD_REGION</constant></entry>
> +         <entry>Hardware motion detection often divides the image into 
> several
> +         regions, and each region can have its own motion detection
> thresholds.
> +         This matrix assigns a region number to each element. Each element is
> a __u8.
> +         Generally each element refers to a block of pixels in the image.

>From the description I have trouble understanding what the matrix type is for. 
Do you think we could make the explanation more detailed ?

> +         </entry>
> +       </row>
> +       <row>
> +         <entry><constant>V4L2_MATRIX_T_MD_THRESHOLD</constant></entry>
> +         <entry>Hardware motion detection can assign motion detection 
threshold
> +         values to each element of an image. Each element is a __u16. +      
>  
>     Generally each element refers to a block of pixels in the image. +        
>    
> </entry>
> +       </row>
> +     </tbody>
> +      </tgroup>
> +    </table>
> +
> +  </refsect1>
> +  <refsect1>
> +    &return-value;
> +  </refsect1>
> +</refentry>

-- 
Regards,

Laurent Pinchart

--
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