This patch adds an additional check for signal presence based on AGC1. Signed-off-by: Andreas Regel <andreas.regel@xxxxxx> diff -r c6b33af45211 linux/drivers/media/dvb/frontends/stv090x.c --- a/linux/drivers/media/dvb/frontends/stv090x.c Mon Nov 02 23:03:44 2009 +0100 +++ b/linux/drivers/media/dvb/frontends/stv090x.c Mon Nov 02 23:08:29 2009 +0100 @@ -3997,7 +3997,7 @@ if ((agc1_power == 0) && (power_iq < STV090x_IQPOWER_THRESHOLD)) { dprintk(FE_ERROR, 1, "No Signal: POWER_IQ=0x%02x", power_iq); lock = 0; - + signal_state = STV090x_NOAGC1; } else { reg = STV090x_READ_DEMOD(state, DEMOD); STV090x_SETFIELD_Px(reg, SPECINV_CONTROL_FIELD, state->inversion); @@ -4021,9 +4021,8 @@ } } - /* need to check for AGC1 state */ - - + if (signal_state == STV090x_NOAGC1) + return signal_state; if (state->algo == STV090x_BLIND_SEARCH) lock = stv090x_blind_search(state); diff -r c6b33af45211 linux/drivers/media/dvb/frontends/stv090x_priv.h --- a/linux/drivers/media/dvb/frontends/stv090x_priv.h Mon Nov 02 23:03:44 2009 +0100 +++ b/linux/drivers/media/dvb/frontends/stv090x_priv.h Mon Nov 02 23:08:29 2009 +0100 @@ -91,6 +91,7 @@ STV090x_SEARCH_AGC2_TH_CUT30) enum stv090x_signal_state { + STV090x_NOAGC1, STV090x_NOCARRIER, STV090x_NODATA, STV090x_DATAOK, -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html