stb0899: fixed reading of IF_AGC_GAIN register
PATCH 2/2 stb0899: fixed reading of IF_AGC_GAIN register
When reading IF_AGC_GAIN register a wrong value for the base address register was used (STB0899_DEMOD instead of STB0899_S2DEMOD). That lead to a wrong signal strength value on DVB-S2 transponders.
Signed-off-by Andreas Regel <[email protected]>
--- drivers/media/dvb/frontends/stb0899_drv.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-)
drivers/media/dvb/frontends/stb0899_drv.c +1 -1
@@ -983,7 +983,7 @@ static int stb0899_read_signal_strength(struct dvb_frontend *fe, u16 *strength)break ;case SYS_DVBS2 :if (internal->lock) { - reg =STB0899_READ_S2REG (STB0899_DEMOD ,IF_AGC_GAIN ); + reg =STB0899_READ_S2REG (STB0899_S2DEMOD ,IF_AGC_GAIN ); val =STB0899_GETFIELD (IF_AGC_GAIN , reg); *strength = stb0899_table_lookup(stb0899_dvbs2rf_tab,
ARRAY_SIZE(stb0899_dvbs2rf_tab) - 1, val);
Signature · 1 line
1.7.2.5
Quoted 14 lines
When reading
IF_AGC_GAINregister a wrong value for the base address register was used (STB0899_DEMODinstead ofSTB0899_S2DEMOD). That lead to a wrong signal strength value on DVB-S2 transponders.Signed-off-by Andreas Regel <[email protected]>--- drivers/media/dvb/frontends/stb0899_drv.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-)drivers/media/dvb/frontends/stb0899_drv.c +0
-0
drivers/media/dvb/frontends/stb0899_drv.c static int stb0899_read_signal_strength(struct dvb_frontend *fe, u16 *strength) · line 988
Quoted 7 lines
drivers/media/dvb/frontends/stb0899_drv.c +1
-1@@ -983,7 +983,7 @@ static int stb0899_read_signal_strength(struct dvb_frontend *fe, u16 *strength)break ;case SYS_DVBS2 :if (internal->lock) { - reg =STB0899_READ_S2REG (STB0899_DEMOD ,IF_AGC_GAIN ); + reg =STB0899_READ_S2REG (STB0899_S2DEMOD ,IF_AGC_GAIN ); val =STB0899_GETFIELD (IF_AGC_GAIN , reg); *strength =stb0899_table_lookup (stb0899_dvbs2rf_tab,ARRAY_SIZE (stb0899_dvbs2rf_tab) -1 , val);