V4L/DVB (9468): Miscellaneous fixes
- Fix a bitfield
- Set gain appropriately
- Slept for the wrong duration
Signed-off-by: Reinhard Nissl <rnissl@gmx.de>
Signed-off-by: Manu Abraham <manu@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
diff --git a/drivers/media/dvb/frontends/stb0899_reg.h b/drivers/media/dvb/frontends/stb0899_reg.h
index 4e5b241..ba1ed56 100644
--- a/drivers/media/dvb/frontends/stb0899_reg.h
+++ b/drivers/media/dvb/frontends/stb0899_reg.h
@@ -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
diff --git a/drivers/media/dvb/frontends/stb6100.c b/drivers/media/dvb/frontends/stb6100.c
index f404a4d..083d6b6 100644
--- a/drivers/media/dvb/frontends/stb6100.c
+++ b/drivers/media/dvb/frontends/stb6100.c
@@ -338,11 +338,11 @@
/* 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 @@
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)