1 .. -*- coding: utf-8; mode: rst -*-
11 Query DVB frontend capabilities and returns information about the
12 front-end. This call only requires read-only access to the device
18 .. cpp:function:: int ioctl( int fd, int request, struct dvb_frontend_info *argp )
24 File descriptor returned by :ref:`open() <frontend_f_open>`.
30 pointer to struct struct
31 :ref:`dvb_frontend_info <dvb-frontend-info>`
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
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.
51 .. _dvb-frontend-info:
53 .. flat-table:: struct dvb_frontend_info
65 - Name of the frontend
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.
83 - Minimal frequency supported by the frontend
91 - Maximal frequency supported by the frontend
99 - Frequency step - all frequencies are multiple of this value
105 - frequency_tolerance
107 - Tolerance of the frequency
115 - Minimal symbol rate (for Cable/Satellite systems), in bauds
123 - Maximal symbol rate (for Cable/Satellite systems), in bauds
129 - symbol_rate_tolerance
131 - Maximal symbol rate tolerance, in ppm
139 - **DEPRECATED**. Not used by any driver.
143 - enum :ref:`fe_caps <fe-caps>`
147 - Capabilities supported by the frontend
150 NOTE: The frequencies are specified in Hz for Terrestrial and Cable
151 systems. They're specified in kHz for Satellite systems
156 frontend capabilities
157 =====================
159 Capabilities describe what a frontend can do. Some capabilities are
160 supported only on some specific frontend types.
165 .. flat-table:: enum fe_caps
178 - .. _`FE-IS-STUPID`:
182 - There's something wrong at the frontend, and it can't report its
187 - .. _`FE-CAN-INVERSION-AUTO`:
189 ``FE_CAN_INVERSION_AUTO``
191 - The frontend is capable of auto-detecting inversion
195 - .. _`FE-CAN-FEC-1-2`:
199 - The frontend supports FEC 1/2
203 - .. _`FE-CAN-FEC-2-3`:
207 - The frontend supports FEC 2/3
211 - .. _`FE-CAN-FEC-3-4`:
215 - The frontend supports FEC 3/4
219 - .. _`FE-CAN-FEC-4-5`:
223 - The frontend supports FEC 4/5
227 - .. _`FE-CAN-FEC-5-6`:
231 - The frontend supports FEC 5/6
235 - .. _`FE-CAN-FEC-6-7`:
239 - The frontend supports FEC 6/7
243 - .. _`FE-CAN-FEC-7-8`:
247 - The frontend supports FEC 7/8
251 - .. _`FE-CAN-FEC-8-9`:
255 - The frontend supports FEC 8/9
259 - .. _`FE-CAN-FEC-AUTO`:
263 - The frontend can autodetect FEC.
271 - The frontend supports QPSK modulation
275 - .. _`FE-CAN-QAM-16`:
279 - The frontend supports 16-QAM modulation
283 - .. _`FE-CAN-QAM-32`:
287 - The frontend supports 32-QAM modulation
291 - .. _`FE-CAN-QAM-64`:
295 - The frontend supports 64-QAM modulation
299 - .. _`FE-CAN-QAM-128`:
303 - The frontend supports 128-QAM modulation
307 - .. _`FE-CAN-QAM-256`:
311 - The frontend supports 256-QAM modulation
315 - .. _`FE-CAN-QAM-AUTO`:
319 - The frontend can autodetect modulation
323 - .. _`FE-CAN-TRANSMISSION-MODE-AUTO`:
325 ``FE_CAN_TRANSMISSION_MODE_AUTO``
327 - The frontend can autodetect the transmission mode
331 - .. _`FE-CAN-BANDWIDTH-AUTO`:
333 ``FE_CAN_BANDWIDTH_AUTO``
335 - The frontend can autodetect the bandwidth
339 - .. _`FE-CAN-GUARD-INTERVAL-AUTO`:
341 ``FE_CAN_GUARD_INTERVAL_AUTO``
343 - The frontend can autodetect the guard interval
347 - .. _`FE-CAN-HIERARCHY-AUTO`:
349 ``FE_CAN_HIERARCHY_AUTO``
351 - The frontend can autodetect hierarch
359 - The frontend supports 8-VSB modulation
363 - .. _`FE-CAN-16VSB`:
367 - The frontend supports 16-VSB modulation
371 - .. _`FE-HAS-EXTENDED-CAPS`:
373 ``FE_HAS_EXTENDED_CAPS``
379 - .. _`FE-CAN-MULTISTREAM`:
381 ``FE_CAN_MULTISTREAM``
383 - The frontend supports multistream filtering
387 - .. _`FE-CAN-TURBO-FEC`:
391 - The frontend supports turbo FEC modulation
395 - .. _`FE-CAN-2G-MODULATION`:
397 ``FE_CAN_2G_MODULATION``
399 - The frontend supports "2nd generation modulation" (DVB-S2/T2)>
403 - .. _`FE-NEEDS-BENDING`:
407 - Not supported anymore, don't use it
411 - .. _`FE-CAN-RECOVER`:
415 - The frontend can recover from a cable unplug automatically
419 - .. _`FE-CAN-MUTE-TS`:
423 - The frontend can stop spurious TS data output