Name

FE_READ_STATUS — Returns status information about the front-end. This call only requires read-only access to the device

Synopsis

int ioctl(int fd,
 int request,
 unsigned int *status);
 

Arguments

fd

File descriptor returned by open().

request

FE_READ_STATUS

status

pointer to a bitmask integer filled with the values defined by enum fe_status.

Description

All DVB frontend devices support the FE_READ_STATUS ioctl. It is used to check about the locking status of the frontend after being tuned. The ioctl takes a pointer to an integer where the status will be written.

NOTE: the size of status is actually sizeof(enum fe_status), with varies according with the architecture. This needs to be fixed in the future.

RETURN VALUE

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.

int fe_status

The fe_status parameter is used to indicate the current state and/or state changes of the frontend hardware. It is produced using the enum fe_status values on a bitmask

Table 9.19. enum fe_status

IDDescription
FE_HAS_SIGNALThe frontend has found something above the noise level
FE_HAS_CARRIERThe frontend has found a DVB signal
FE_HAS_VITERBIThe frontend FEC inner coding (Viterbi, LDPC or other inner code) is stable
FE_HAS_SYNCSynchronization bytes was found
FE_HAS_LOCKThe DVB were locked and everything is working
FE_TIMEDOUTno lock within the last about 2 seconds
FE_REINITThe frontend was reinitialized, application is recommended to reset DiSEqC, tone and parameters