[media] vidioc-dv-timings-cap.rst: Adjust LaTeX columns
[cascardo/linux.git] / Documentation / media / uapi / v4l / vidioc-dv-timings-cap.rst
1 .. -*- coding: utf-8; mode: rst -*-
2
3 .. _VIDIOC_DV_TIMINGS_CAP:
4
5 *********************************************************
6 ioctl VIDIOC_DV_TIMINGS_CAP, VIDIOC_SUBDEV_DV_TIMINGS_CAP
7 *********************************************************
8
9 Name
10 ====
11
12 VIDIOC_DV_TIMINGS_CAP - VIDIOC_SUBDEV_DV_TIMINGS_CAP - The capabilities of the Digital Video receiver/transmitter
13
14
15 Synopsis
16 ========
17
18 .. cpp:function:: int ioctl( int fd, int request, struct v4l2_dv_timings_cap *argp )
19
20
21 Arguments
22 =========
23
24 ``fd``
25     File descriptor returned by :ref:`open() <func-open>`.
26
27 ``request``
28     VIDIOC_DV_TIMINGS_CAP, VIDIOC_SUBDEV_DV_TIMINGS_CAP
29
30 ``argp``
31
32
33 Description
34 ===========
35
36 To query the capabilities of the DV receiver/transmitter applications
37 initialize the ``pad`` field to 0, zero the reserved array of struct
38 :ref:`v4l2_dv_timings_cap <v4l2-dv-timings-cap>` and call the
39 ``VIDIOC_DV_TIMINGS_CAP`` ioctl on a video node and the driver will fill
40 in the structure.
41
42 .. note::
43
44    Drivers may return different values after
45    switching the video input or output.
46
47 When implemented by the driver DV capabilities of subdevices can be
48 queried by calling the ``VIDIOC_SUBDEV_DV_TIMINGS_CAP`` ioctl directly
49 on a subdevice node. The capabilities are specific to inputs (for DV
50 receivers) or outputs (for DV transmitters), applications must specify
51 the desired pad number in the struct
52 :ref:`v4l2_dv_timings_cap <v4l2-dv-timings-cap>` ``pad`` field and
53 zero the ``reserved`` array. Attempts to query capabilities on a pad
54 that doesn't support them will return an ``EINVAL`` error code.
55
56
57 .. _v4l2-bt-timings-cap:
58
59 .. tabularcolumns:: |p{1.2cm}|p{3.0cm}|p{13.3cm}|
60
61 .. flat-table:: struct v4l2_bt_timings_cap
62     :header-rows:  0
63     :stub-columns: 0
64     :widths:       1 1 2
65
66
67     -  .. row 1
68
69        -  __u32
70
71        -  ``min_width``
72
73        -  Minimum width of the active video in pixels.
74
75     -  .. row 2
76
77        -  __u32
78
79        -  ``max_width``
80
81        -  Maximum width of the active video in pixels.
82
83     -  .. row 3
84
85        -  __u32
86
87        -  ``min_height``
88
89        -  Minimum height of the active video in lines.
90
91     -  .. row 4
92
93        -  __u32
94
95        -  ``max_height``
96
97        -  Maximum height of the active video in lines.
98
99     -  .. row 5
100
101        -  __u64
102
103        -  ``min_pixelclock``
104
105        -  Minimum pixelclock frequency in Hz.
106
107     -  .. row 6
108
109        -  __u64
110
111        -  ``max_pixelclock``
112
113        -  Maximum pixelclock frequency in Hz.
114
115     -  .. row 7
116
117        -  __u32
118
119        -  ``standards``
120
121        -  The video standard(s) supported by the hardware. See
122           :ref:`dv-bt-standards` for a list of standards.
123
124     -  .. row 8
125
126        -  __u32
127
128        -  ``capabilities``
129
130        -  Several flags giving more information about the capabilities. See
131           :ref:`dv-bt-cap-capabilities` for a description of the flags.
132
133     -  .. row 9
134
135        -  __u32
136
137        -  ``reserved``\ [16]
138
139        -  Reserved for future extensions.
140           Drivers must set the array to zero.
141
142
143
144 .. _v4l2-dv-timings-cap:
145
146 .. tabularcolumns:: |p{1.0cm}|p{3.5cm}|p{3.5cm}|p{9.5cm}|
147
148 .. flat-table:: struct v4l2_dv_timings_cap
149     :header-rows:  0
150     :stub-columns: 0
151     :widths:       1 1 2 1
152
153
154     -  .. row 1
155
156        -  __u32
157
158        -  ``type``
159
160        -  Type of DV timings as listed in :ref:`dv-timing-types`.
161
162     -  .. row 2
163
164        -  __u32
165
166        -  ``pad``
167
168        -  Pad number as reported by the media controller API. This field is
169           only used when operating on a subdevice node. When operating on a
170           video node applications must set this field to zero.
171
172     -  .. row 3
173
174        -  __u32
175
176        -  ``reserved``\ [2]
177
178        -  Reserved for future extensions.
179
180           Drivers and applications must set the array to zero.
181
182     -  .. row 4
183
184        -  union
185
186        -
187        -
188
189     -  .. row 5
190
191        -
192        -  struct :ref:`v4l2_bt_timings_cap <v4l2-bt-timings-cap>`
193
194        -  ``bt``
195
196        -  BT.656/1120 timings capabilities of the hardware.
197
198     -  .. row 6
199
200        -
201        -  __u32
202
203        -  ``raw_data``\ [32]
204
205        -
206
207 .. tabularcolumns:: |p{7.0cm}|p{10.5cm}|
208
209
210 .. _dv-bt-cap-capabilities:
211
212 .. flat-table:: DV BT Timing capabilities
213     :header-rows:  0
214     :stub-columns: 0
215
216
217     -  .. row 1
218
219        -  Flag
220
221        -  Description
222
223     -  .. row 2
224
225        -
226        -
227
228     -  .. row 3
229
230        -  ``V4L2_DV_BT_CAP_INTERLACED``
231
232        -  Interlaced formats are supported.
233
234     -  .. row 4
235
236        -  ``V4L2_DV_BT_CAP_PROGRESSIVE``
237
238        -  Progressive formats are supported.
239
240     -  .. row 5
241
242        -  ``V4L2_DV_BT_CAP_REDUCED_BLANKING``
243
244        -  CVT/GTF specific: the timings can make use of reduced blanking
245           (CVT) or the 'Secondary GTF' curve (GTF).
246
247     -  .. row 6
248
249        -  ``V4L2_DV_BT_CAP_CUSTOM``
250
251        -  Can support non-standard timings, i.e. timings not belonging to
252           the standards set in the ``standards`` field.
253
254
255 Return Value
256 ============
257
258 On success 0 is returned, on error -1 and the ``errno`` variable is set
259 appropriately. The generic error codes are described at the
260 :ref:`Generic Error Codes <gen-errors>` chapter.