提交 737fabf0 编写于 作者: A Antti Palosaari 提交者: Mauro Carvalho Chehab

V4L/DVB: af9013: program tuner before demodulator

Program tuner before demodulator in case of channel set. Earlier it was
programmed during demodulator programming. This seems to resolve weird
error where demodulator misses sometimes ability to gain lock.
Signed-off-by: NAntti Palosaari <crope@iki.fi>
Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
上级 2606cfa3
...@@ -761,6 +761,10 @@ static int af9013_set_frontend(struct dvb_frontend *fe, ...@@ -761,6 +761,10 @@ static int af9013_set_frontend(struct dvb_frontend *fe,
state->frequency = params->frequency; state->frequency = params->frequency;
/* program tuner */
if (fe->ops.tuner_ops.set_params)
fe->ops.tuner_ops.set_params(fe, params);
/* program CFOE coefficients */ /* program CFOE coefficients */
ret = af9013_set_coeff(state, params->u.ofdm.bandwidth); ret = af9013_set_coeff(state, params->u.ofdm.bandwidth);
if (ret) if (ret)
...@@ -791,10 +795,6 @@ static int af9013_set_frontend(struct dvb_frontend *fe, ...@@ -791,10 +795,6 @@ static int af9013_set_frontend(struct dvb_frontend *fe,
if (ret) if (ret)
goto error; goto error;
/* program tuner */
if (fe->ops.tuner_ops.set_params)
fe->ops.tuner_ops.set_params(fe, params);
/* program TPS and bandwidth, check if auto mode needed */ /* program TPS and bandwidth, check if auto mode needed */
ret = af9013_set_ofdm_params(state, &params->u.ofdm, &auto_mode); ret = af9013_set_ofdm_params(state, &params->u.ofdm, &auto_mode);
if (ret) if (ret)
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册