[PATCH] dvb: frontend: ves1820: improve tuning

Reset acgconf register after tuning to improve locking, as suggested by Marco
Schluessler.  Minor cleanups in ves1820_init().

Signed-off-by: Johannes Stezenbach <js@linuxtv.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
Johannes Stezenbach 2005-09-09 13:02:34 -07:00 committed by Linus Torvalds
parent c2026b3af0
commit 6816a4c183
1 changed files with 7 additions and 8 deletions

View File

@ -194,19 +194,18 @@ static int ves1820_init(struct dvb_frontend* fe)
{
struct ves1820_state* state = fe->demodulator_priv;
int i;
int val;
ves1820_writereg(state, 0, 0);
for (i = 0; i < 53; i++) {
val = ves1820_inittab[i];
if ((i == 2) && (state->config->selagc)) val |= 0x08;
ves1820_writereg(state, i, val);
}
for (i = 0; i < sizeof(ves1820_inittab); i++)
ves1820_writereg(state, i, ves1820_inittab[i]);
if (state->config->selagc)
ves1820_writereg(state, 2, ves1820_inittab[2] | 0x08);
ves1820_writereg(state, 0x34, state->pwm);
if (state->config->pll_init) state->config->pll_init(fe);
if (state->config->pll_init)
state->config->pll_init(fe);
return 0;
}
@ -234,7 +233,7 @@ static int ves1820_set_parameters(struct dvb_frontend* fe, struct dvb_frontend_p
ves1820_writereg(state, 0x09, reg0x09[real_qam]);
ves1820_setup_reg0(state, reg0x00[real_qam], p->inversion);
ves1820_writereg(state, 2, ves1820_inittab[2] | (state->config->selagc ? 0x08 : 0));
return 0;
}