FE_GET_INFO - Query DVB frontend capabilities and returns information about the - front-end. This call only requires read-only access to the device
All DVB frontend devices support the FE_GET_INFO ioctl. It is used to identify kernel devices compatible with this specification and to obtain information about driver and hardware capabilities. The ioctl takes a pointer to dvb_frontend_info which is filled by the driver. When the driver is not compatible with this specification the ioctl returns an error.
char | name[128] | Name of the frontend |
fe_type_t | type | DEPRECATED. DVBv3 type. Should not be used on modern programs, as a frontend may have more than one type. So, the DVBv5 API should be used instead to enumerate and select the frontend type. |
uint32_t | frequency_min | Minimal frequency supported by the frontend |
uint32_t | frequency_max | Maximal frequency supported by the frontend |
uint32_t | frequency_stepsize | Frequency step - all frequencies are multiple of this value |
uint32_t | frequency_tolerance | Tolerance of the frequency |
uint32_t | symbol_rate_min | Minimal symbol rate (for Cable/Satellite systems), in bauds |
uint32_t | symbol_rate_max | Maximal symbol rate (for Cable/Satellite systems), in bauds |
uint32_t | symbol_rate_tolerance | Maximal symbol rate tolerance, in ppm |
uint32_t | notifier_delay | DEPRECATED. Not used by any driver. |
enum fe_caps | caps | Capabilities supported by the frontend |
Note
The frequencies are specified in Hz for Terrestrial and Cable systems. They’re specified in kHz for Satellite systems
Capabilities describe what a frontend can do. Some capabilities are supported only on some specific frontend types.
ID | Description |
---|---|
FE_IS_STUPID |
There’s something wrong at the frontend, and it can’t report its capabilities |
FE_CAN_INVERSION_AUTO |
The frontend is capable of auto-detecting inversion |
FE_CAN_FEC_1_2 |
The frontend supports FEC 1/2 |
FE_CAN_FEC_2_3 |
The frontend supports FEC 2/3 |
FE_CAN_FEC_3_4 |
The frontend supports FEC 3/4 |
FE_CAN_FEC_4_5 |
The frontend supports FEC 4/5 |
FE_CAN_FEC_5_6 |
The frontend supports FEC 5/6 |
FE_CAN_FEC_6_7 |
The frontend supports FEC 6/7 |
FE_CAN_FEC_7_8 |
The frontend supports FEC 7/8 |
FE_CAN_FEC_8_9 |
The frontend supports FEC 8/9 |
FE_CAN_FEC_AUTO |
The frontend can autodetect FEC. |
FE_CAN_QPSK |
The frontend supports QPSK modulation |
FE_CAN_QAM_16 |
The frontend supports 16-QAM modulation |
FE_CAN_QAM_32 |
The frontend supports 32-QAM modulation |
FE_CAN_QAM_64 |
The frontend supports 64-QAM modulation |
FE_CAN_QAM_128 |
The frontend supports 128-QAM modulation |
FE_CAN_QAM_256 |
The frontend supports 256-QAM modulation |
FE_CAN_QAM_AUTO |
The frontend can autodetect modulation |
FE_CAN_TRANSMISSION_MODE_AUTO |
The frontend can autodetect the transmission mode |
FE_CAN_BANDWIDTH_AUTO |
The frontend can autodetect the bandwidth |
FE_CAN_GUARD_INTERVAL_AUTO |
The frontend can autodetect the guard interval |
FE_CAN_HIERARCHY_AUTO |
The frontend can autodetect hierarch |
FE_CAN_8VSB |
The frontend supports 8-VSB modulation |
FE_CAN_16VSB |
The frontend supports 16-VSB modulation |
FE_HAS_EXTENDED_CAPS |
Currently, unused |
FE_CAN_MULTISTREAM |
The frontend supports multistream filtering |
FE_CAN_TURBO_FEC |
The frontend supports turbo FEC modulation |
FE_CAN_2G_MODULATION |
The frontend supports “2nd generation modulation” (DVB-S2/T2)> |
FE_NEEDS_BENDING |
Not supported anymore, don’t use it |
FE_CAN_RECOVER |
The frontend can recover from a cable unplug automatically |
FE_CAN_MUTE_TS |
The frontend can stop spurious TS data output |
On success 0 is returned, on error -1 and the errno variable is set appropriately. The generic error codes are described at the Generic Error Codes chapter.