doc-rst: linux_tv: remove whitespaces
[deliverable/linux.git] / Documentation / linux_tv / media / dvb / fe-get-info.rst
1 .. -*- coding: utf-8; mode: rst -*-
2
3 .. _FE_GET_INFO:
4
5 *****************
6 ioctl FE_GET_INFO
7 *****************
8
9 *man FE_GET_INFO(2)*
10
11 Query DVB frontend capabilities and returns information about the
12 front-end. This call only requires read-only access to the device
13
14
15 Synopsis
16 ========
17
18 .. cpp:function:: int ioctl( int fd, int request, struct dvb_frontend_info *argp )
19
20 Arguments
21 =========
22
23 ``fd``
24 File descriptor returned by :ref:`open() <frontend_f_open>`.
25
26 ``request``
27 FE_GET_INFO
28
29 ``argp``
30 pointer to struct struct
31 :ref:`dvb_frontend_info <dvb-frontend-info>`
32
33
34 Description
35 ===========
36
37 All DVB frontend devices support the ``FE_GET_INFO`` ioctl. It is used
38 to identify kernel devices compatible with this specification and to
39 obtain information about driver and hardware capabilities. The ioctl
40 takes a pointer to dvb_frontend_info which is filled by the driver.
41 When the driver is not compatible with this specification the ioctl
42 returns an error.
43
44 RETURN VALUE
45
46 On success 0 is returned, on error -1 and the ``errno`` variable is set
47 appropriately. The generic error codes are described at the
48 :ref:`Generic Error Codes <gen-errors>` chapter.
49
50
51 .. _dvb-frontend-info:
52
53 .. flat-table:: struct dvb_frontend_info
54 :header-rows: 0
55 :stub-columns: 0
56 :widths: 1 1 2
57
58
59 - .. row 1
60
61 - char
62
63 - name[128]
64
65 - Name of the frontend
66
67 - .. row 2
68
69 - fe_type_t
70
71 - type
72
73 - **DEPRECATED**. DVBv3 type. Should not be used on modern programs,
74 as a frontend may have more than one type. So, the DVBv5 API
75 should be used instead to enumerate and select the frontend type.
76
77 - .. row 3
78
79 - uint32_t
80
81 - frequency_min
82
83 - Minimal frequency supported by the frontend
84
85 - .. row 4
86
87 - uint32_t
88
89 - frequency_max
90
91 - Maximal frequency supported by the frontend
92
93 - .. row 5
94
95 - uint32_t
96
97 - frequency_stepsize
98
99 - Frequency step - all frequencies are multiple of this value
100
101 - .. row 6
102
103 - uint32_t
104
105 - frequency_tolerance
106
107 - Tolerance of the frequency
108
109 - .. row 7
110
111 - uint32_t
112
113 - symbol_rate_min
114
115 - Minimal symbol rate (for Cable/Satellite systems), in bauds
116
117 - .. row 8
118
119 - uint32_t
120
121 - symbol_rate_max
122
123 - Maximal symbol rate (for Cable/Satellite systems), in bauds
124
125 - .. row 9
126
127 - uint32_t
128
129 - symbol_rate_tolerance
130
131 - Maximal symbol rate tolerance, in ppm
132
133 - .. row 10
134
135 - uint32_t
136
137 - notifier_delay
138
139 - **DEPRECATED**. Not used by any driver.
140
141 - .. row 11
142
143 - enum :ref:`fe_caps <fe-caps>`
144
145 - caps
146
147 - Capabilities supported by the frontend
148
149
150 NOTE: The frequencies are specified in Hz for Terrestrial and Cable
151 systems. They're specified in kHz for Satellite systems
152
153
154 .. _fe-caps-t:
155
156 frontend capabilities
157 =====================
158
159 Capabilities describe what a frontend can do. Some capabilities are
160 supported only on some specific frontend types.
161
162
163 .. _fe-caps:
164
165 .. flat-table:: enum fe_caps
166 :header-rows: 1
167 :stub-columns: 0
168
169
170 - .. row 1
171
172 - ID
173
174 - Description
175
176 - .. row 2
177
178 - .. _`FE-IS-STUPID`:
179
180 ``FE_IS_STUPID``
181
182 - There's something wrong at the frontend, and it can't report its
183 capabilities
184
185 - .. row 3
186
187 - .. _`FE-CAN-INVERSION-AUTO`:
188
189 ``FE_CAN_INVERSION_AUTO``
190
191 - The frontend is capable of auto-detecting inversion
192
193 - .. row 4
194
195 - .. _`FE-CAN-FEC-1-2`:
196
197 ``FE_CAN_FEC_1_2``
198
199 - The frontend supports FEC 1/2
200
201 - .. row 5
202
203 - .. _`FE-CAN-FEC-2-3`:
204
205 ``FE_CAN_FEC_2_3``
206
207 - The frontend supports FEC 2/3
208
209 - .. row 6
210
211 - .. _`FE-CAN-FEC-3-4`:
212
213 ``FE_CAN_FEC_3_4``
214
215 - The frontend supports FEC 3/4
216
217 - .. row 7
218
219 - .. _`FE-CAN-FEC-4-5`:
220
221 ``FE_CAN_FEC_4_5``
222
223 - The frontend supports FEC 4/5
224
225 - .. row 8
226
227 - .. _`FE-CAN-FEC-5-6`:
228
229 ``FE_CAN_FEC_5_6``
230
231 - The frontend supports FEC 5/6
232
233 - .. row 9
234
235 - .. _`FE-CAN-FEC-6-7`:
236
237 ``FE_CAN_FEC_6_7``
238
239 - The frontend supports FEC 6/7
240
241 - .. row 10
242
243 - .. _`FE-CAN-FEC-7-8`:
244
245 ``FE_CAN_FEC_7_8``
246
247 - The frontend supports FEC 7/8
248
249 - .. row 11
250
251 - .. _`FE-CAN-FEC-8-9`:
252
253 ``FE_CAN_FEC_8_9``
254
255 - The frontend supports FEC 8/9
256
257 - .. row 12
258
259 - .. _`FE-CAN-FEC-AUTO`:
260
261 ``FE_CAN_FEC_AUTO``
262
263 - The frontend can autodetect FEC.
264
265 - .. row 13
266
267 - .. _`FE-CAN-QPSK`:
268
269 ``FE_CAN_QPSK``
270
271 - The frontend supports QPSK modulation
272
273 - .. row 14
274
275 - .. _`FE-CAN-QAM-16`:
276
277 ``FE_CAN_QAM_16``
278
279 - The frontend supports 16-QAM modulation
280
281 - .. row 15
282
283 - .. _`FE-CAN-QAM-32`:
284
285 ``FE_CAN_QAM_32``
286
287 - The frontend supports 32-QAM modulation
288
289 - .. row 16
290
291 - .. _`FE-CAN-QAM-64`:
292
293 ``FE_CAN_QAM_64``
294
295 - The frontend supports 64-QAM modulation
296
297 - .. row 17
298
299 - .. _`FE-CAN-QAM-128`:
300
301 ``FE_CAN_QAM_128``
302
303 - The frontend supports 128-QAM modulation
304
305 - .. row 18
306
307 - .. _`FE-CAN-QAM-256`:
308
309 ``FE_CAN_QAM_256``
310
311 - The frontend supports 256-QAM modulation
312
313 - .. row 19
314
315 - .. _`FE-CAN-QAM-AUTO`:
316
317 ``FE_CAN_QAM_AUTO``
318
319 - The frontend can autodetect modulation
320
321 - .. row 20
322
323 - .. _`FE-CAN-TRANSMISSION-MODE-AUTO`:
324
325 ``FE_CAN_TRANSMISSION_MODE_AUTO``
326
327 - The frontend can autodetect the transmission mode
328
329 - .. row 21
330
331 - .. _`FE-CAN-BANDWIDTH-AUTO`:
332
333 ``FE_CAN_BANDWIDTH_AUTO``
334
335 - The frontend can autodetect the bandwidth
336
337 - .. row 22
338
339 - .. _`FE-CAN-GUARD-INTERVAL-AUTO`:
340
341 ``FE_CAN_GUARD_INTERVAL_AUTO``
342
343 - The frontend can autodetect the guard interval
344
345 - .. row 23
346
347 - .. _`FE-CAN-HIERARCHY-AUTO`:
348
349 ``FE_CAN_HIERARCHY_AUTO``
350
351 - The frontend can autodetect hierarch
352
353 - .. row 24
354
355 - .. _`FE-CAN-8VSB`:
356
357 ``FE_CAN_8VSB``
358
359 - The frontend supports 8-VSB modulation
360
361 - .. row 25
362
363 - .. _`FE-CAN-16VSB`:
364
365 ``FE_CAN_16VSB``
366
367 - The frontend supports 16-VSB modulation
368
369 - .. row 26
370
371 - .. _`FE-HAS-EXTENDED-CAPS`:
372
373 ``FE_HAS_EXTENDED_CAPS``
374
375 - Currently, unused
376
377 - .. row 27
378
379 - .. _`FE-CAN-MULTISTREAM`:
380
381 ``FE_CAN_MULTISTREAM``
382
383 - The frontend supports multistream filtering
384
385 - .. row 28
386
387 - .. _`FE-CAN-TURBO-FEC`:
388
389 ``FE_CAN_TURBO_FEC``
390
391 - The frontend supports turbo FEC modulation
392
393 - .. row 29
394
395 - .. _`FE-CAN-2G-MODULATION`:
396
397 ``FE_CAN_2G_MODULATION``
398
399 - The frontend supports "2nd generation modulation" (DVB-S2/T2)>
400
401 - .. row 30
402
403 - .. _`FE-NEEDS-BENDING`:
404
405 ``FE_NEEDS_BENDING``
406
407 - Not supported anymore, don't use it
408
409 - .. row 31
410
411 - .. _`FE-CAN-RECOVER`:
412
413 ``FE_CAN_RECOVER``
414
415 - The frontend can recover from a cable unplug automatically
416
417 - .. row 32
418
419 - .. _`FE-CAN-MUTE-TS`:
420
421 ``FE_CAN_MUTE_TS``
422
423 - The frontend can stop spurious TS data output
This page took 0.040268 seconds and 5 git commands to generate.