From: Mauro Carvalho Chehab <mchehab@s-opensource.com> Date: Sun, 15 Oct 2017 18:54:52 +0000 (-0400) Subject: media: mxl5xx: fix tuning logic X-Git-Url: http://git.cdn.openwrt.org/?a=commitdiff_plain;h=2919d12de52106279b92a75e9a6788b5c668a159;p=openwrt%2Fstaging%2Fblogic.git 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> --- 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)