summaryrefslogtreecommitdiff
path: root/drivers/media/dvb-frontends
diff options
context:
space:
mode:
authorMauro Carvalho Chehab <mchehab@s-opensource.com>2017-10-15 14:54:52 -0400
committerMauro Carvalho Chehab <mchehab@s-opensource.com>2017-12-11 13:04:33 -0500
commit2919d12de52106279b92a75e9a6788b5c668a159 (patch)
treed84a664d3fa20a31ae451883c753a658cdadd05f /drivers/media/dvb-frontends
parent19326ef0874e8fdcf4d6d6fe97e85b2dac69a954 (diff)
media: mxl5xx: fix tuning logic
The tuning logic is broken with regards to status report: it relies on a previously-cached value that may not be valid if re-tuned. Change the logic to always read the status. Acked-by: Daniel Scheller <d.scheller@gmx.net> Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
Diffstat (limited to 'drivers/media/dvb-frontends')
-rw-r--r--drivers/media/dvb-frontends/mxl5xx.c9
1 files changed, 1 insertions, 8 deletions
diff --git a/drivers/media/dvb-frontends/mxl5xx.c b/drivers/media/dvb-frontends/mxl5xx.c
index 53064e11f5f1..1ebc3830579f 100644
--- a/drivers/media/dvb-frontends/mxl5xx.c
+++ b/drivers/media/dvb-frontends/mxl5xx.c
@@ -636,16 +636,9 @@ static int tune(struct dvb_frontend *fe, bool re_tune,
if (r)
return r;
state->tune_time = jiffies;
- return 0;
}
- if (*status & FE_HAS_LOCK)
- return 0;
- r = read_status(fe, status);
- if (r)
- return r;
-
- return 0;
+ return read_status(fe, status);
}
static enum fe_code_rate conv_fec(enum MXL_HYDRA_FEC_E fec)