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