提交 9bb17eee 编写于 作者: R Reinhard Nissl 提交者: Mauro Carvalho Chehab

V4L/DVB (9468): Miscellaneous fixes

 - Fix a bitfield
 - Set gain appropriately
 - Slept for the wrong duration
Signed-off-by: NReinhard Nissl <rnissl@gmx.de>
Signed-off-by: NManu Abraham <manu@linuxtv.org>
Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
上级 c615a27a
......@@ -362,7 +362,7 @@
#define STB0899_OFF0_CRL_FREQ 0xf304
#define STB0899_BASE_CRL_FREQ 0x00000000
#define STB0899_CARR_FREQ (0x1fffffff << 0)
#define STB0899_CARR_FREQ (0x3fffffff << 0)
#define STB0899_OFFST_CARR_FREQ 0
#define STB0899_WIDTH_CARR_FREQ 30
......
......@@ -338,11 +338,11 @@ static int stb6100_set_frequency(struct dvb_frontend *fe, u32 frequency)
/* Baseband gain. */
if (srate >= 15000000)
g = 8;
else if (state->srate >= 5000000)
g = 12;
g = 9; // +4 dB
else if (srate >= 5000000)
g = 11; // +8 dB
else
g = 14;
g = 14; // +14 dB
regs[STB6100_G] = (regs[STB6100_G] & ~STB6100_G_G) | g;
regs[STB6100_G] &= ~STB6100_G_GCT; /* mask GCT */
......@@ -403,7 +403,7 @@ static int stb6100_set_frequency(struct dvb_frontend *fe, u32 frequency)
if ((rc = stb6100_write_reg(state, STB6100_VCO, regs[STB6100_VCO])) < 0)
return rc;
msleep(5); /* wait for LO to lock */
msleep(10); /* wait for LO to lock */
regs[STB6100_VCO] &= ~STB6100_VCO_OSCH; /* vco search disabled */
regs[STB6100_VCO] |= STB6100_VCO_OCK; /* search clock off */
if ((rc = stb6100_write_reg(state, STB6100_VCO, regs[STB6100_VCO])) < 0)
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册