Merge branch 'v4l_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab...
[linux-2.6.git] / Documentation / DocBook / media / v4l / vidioc-g-std.xml
1 <refentry id="vidioc-g-std">
2   <refmeta>
3     <refentrytitle>ioctl VIDIOC_G_STD, VIDIOC_S_STD</refentrytitle>
4     &manvol;
5   </refmeta>
6
7   <refnamediv>
8     <refname>VIDIOC_G_STD</refname>
9     <refname>VIDIOC_S_STD</refname>
10     <refpurpose>Query or select the video standard of the current input</refpurpose>
11   </refnamediv>
12
13   <refsynopsisdiv>
14     <funcsynopsis>
15       <funcprototype>
16         <funcdef>int <function>ioctl</function></funcdef>
17         <paramdef>int <parameter>fd</parameter></paramdef>
18         <paramdef>int <parameter>request</parameter></paramdef>
19         <paramdef>v4l2_std_id
20 *<parameter>argp</parameter></paramdef>
21       </funcprototype>
22     </funcsynopsis>
23     <funcsynopsis>
24       <funcprototype>
25         <funcdef>int <function>ioctl</function></funcdef>
26         <paramdef>int <parameter>fd</parameter></paramdef>
27         <paramdef>int <parameter>request</parameter></paramdef>
28         <paramdef>const v4l2_std_id
29 *<parameter>argp</parameter></paramdef>
30       </funcprototype>
31     </funcsynopsis>
32   </refsynopsisdiv>
33
34   <refsect1>
35     <title>Arguments</title>
36
37     <variablelist>
38       <varlistentry>
39         <term><parameter>fd</parameter></term>
40         <listitem>
41           <para>&fd;</para>
42         </listitem>
43       </varlistentry>
44       <varlistentry>
45         <term><parameter>request</parameter></term>
46         <listitem>
47           <para>VIDIOC_G_STD, VIDIOC_S_STD</para>
48         </listitem>
49       </varlistentry>
50       <varlistentry>
51         <term><parameter>argp</parameter></term>
52         <listitem>
53           <para></para>
54         </listitem>
55       </varlistentry>
56     </variablelist>
57   </refsect1>
58
59   <refsect1>
60     <title>Description</title>
61
62     <para>To query and select the current video standard applications
63 use the <constant>VIDIOC_G_STD</constant> and <constant>VIDIOC_S_STD</constant> ioctls which take a pointer to a
64 &v4l2-std-id; type as argument. <constant>VIDIOC_G_STD</constant> can
65 return a single flag or a set of flags as in &v4l2-standard; field
66 <structfield>id</structfield>. The flags must be unambiguous such
67 that they appear in only one enumerated <structname>v4l2_standard</structname> structure.</para>
68
69     <para><constant>VIDIOC_S_STD</constant> accepts one or more
70 flags, being a write-only ioctl it does not return the actual new standard as
71 <constant>VIDIOC_G_STD</constant> does. When no flags are given or
72 the current input does not support the requested standard the driver
73 returns an &EINVAL;. When the standard set is ambiguous drivers may
74 return <errorcode>EINVAL</errorcode> or choose any of the requested
75 standards.</para>
76   </refsect1>
77
78   <refsect1>
79     &return-value;
80
81     <variablelist>
82       <varlistentry>
83         <term><errorcode>EINVAL</errorcode></term>
84         <listitem>
85           <para>The <constant>VIDIOC_S_STD</constant> parameter was unsuitable.</para>
86         </listitem>
87       </varlistentry>
88     </variablelist>
89   </refsect1>
90 </refentry>