linuxdvb: move FE status message from trace to debug on change

This could still be spammy if the signal isn't clean and keeps going
in and out. But that's just tough luck I guess!
This commit is contained in:
Adam Sutton 2013-12-22 18:46:31 +00:00
parent b15f65490a
commit cd92bb0ce3
3 changed files with 31 additions and 1 deletions

View file

@ -294,6 +294,7 @@ linuxdvb_frontend_stop_mux
/* Not locked */
lfe->lfe_locked = 0;
lfe->lfe_status = 0;
/* Ensure it won't happen immediately */
gtimer_arm(&lfe->lfe_monitor_timer, linuxdvb_frontend_monitor, lfe, 2);
@ -474,7 +475,19 @@ linuxdvb_frontend_monitor ( void *aux )
status = SIGNAL_NONE;
/* Set default period */
tvhtrace("linuxdvb", "%s - status %d", buf, status);
if (fe_status != lfe->lfe_status) {
tvhdebug("linuxdvb", "%s - status %7s (%s%s%s%s%s%s)", buf,
signal2str(status),
(fe_status & FE_HAS_SIGNAL) ? "SIGNAL" : "",
(fe_status & FE_HAS_CARRIER) ? " | CARRIER" : "",
(fe_status & FE_HAS_VITERBI) ? " | VITERBI" : "",
(fe_status & FE_HAS_SYNC) ? " | SYNC" : "",
(fe_status & FE_HAS_LOCK) ? " | SIGNAL" : "",
(fe_status & FE_TIMEDOUT) ? "TIMEOUT" : "");
} else {
tvhtrace("linuxdvb", "%s - status %d (%04X)", buf, status, fe_status);
}
lfe->lfe_status = fe_status;
/* Get current mux */
mm = mmi->mmi_mux;
@ -718,6 +731,8 @@ linuxdvb_frontend_tune0
return SM_CODE_TUNING_FAILED;
}
}
lfe->lfe_locked = 0;
lfe->lfe_status = 0;
/* S2 tuning */
#if DVB_API_VERSION >= 5

View file

@ -134,6 +134,7 @@ struct linuxdvb_frontend
* Tuning
*/
int lfe_locked;
fe_status_t lfe_status;
time_t lfe_monitor;
gtimer_t lfe_monitor_timer;

View file

@ -389,6 +389,20 @@ typedef enum
SIGNAL_NONE
} signal_state_t;
static struct strtab signal_statetab[] = {
{ "GOOD", SIGNAL_GOOD },
{ "BAD", SIGNAL_BAD },
{ "FAINT", SIGNAL_BAD },
{ "NONE", SIGNAL_BAD },
};
static inline const char * signal2str ( signal_state_t st )
{
const char *r = val2str(st, signal_statetab);
if (!r) r = "UNKNOWN";
return r;
}
/**
* Streaming messages are sent from the pad to its receivers
*/