Hi, the attached patch fixes the increasing of the signal strength value (higher value = higher signal strength). - Hartmut
sugned-off-by: Hartmut Birr <e9hack@xxxxxxxxxxxxxx> - The value of signal strength depends on the configuration of the agc polarity. diff -r 4ae65d0844cf linux/drivers/media/dvb/frontends/tda10021.c --- a/linux/drivers/media/dvb/frontends/tda10021.c Thu Oct 18 16:25:58 2007 -0200 +++ b/linux/drivers/media/dvb/frontends/tda10021.c Mon Oct 22 21:58:47 2007 +0200 @@ -310,7 +310,11 @@ static int tda10021_read_signal_strength { struct tda10021_state* state = fe->demodulator_priv; - u8 gain = tda10021_readreg(state, 0x17); + u8 config = tda10021_readreg(state, 0x02); + u8 gain = tda10021_readreg(state, 0x17); + if (config & 0x02) + /* the agc value is inverted */ + gain = ~gain; *strength = (gain << 8) | gain; return 0;
_______________________________________________ linux-dvb mailing list linux-dvb@xxxxxxxxxxx http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb