public inbox for linux-media@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH] atbm8830: use AGC setting from config
@ 2009-11-28 11:36 David T. L. Wong
  0 siblings, 0 replies; only message in thread
From: David T. L. Wong @ 2009-11-28 11:36 UTC (permalink / raw)
  To: Mauro Carvalho Chehab; +Cc: v4l-dvb

[-- Attachment #1: Type: text/plain, Size: 188 bytes --]

Hi,

   This patch improves ATBM8830 reception by using per card AGC 
configuration rather than register default.

Regards,
David

Signed-off-by: David T. L. Wong <davidtlwong@gmail.com>


[-- Attachment #2: atbm8830_agc.patch --]
[-- Type: text/x-patch, Size: 1937 bytes --]

diff --git a/linux/drivers/media/dvb/dvb-usb/cxusb.c b/linux/drivers/media/dvb/dvb-usb/cxusb.c
--- a/linux/drivers/media/dvb/dvb-usb/cxusb.c
+++ b/linux/drivers/media/dvb/dvb-usb/cxusb.c
@@ -1187,6 +1187,9 @@
 	.osc_clk_freq = 30400, /* in kHz */
 	.if_freq = 0, /* zero IF */
 	.zif_swap_iq = 1,
+	.agc_min = 0x2E,
+	.agc_max = 0x90,
+	.agc_hold_loop = 0,
 };
 
 static int cxusb_mygica_d689_frontend_attach(struct dvb_usb_adapter *adap)
diff --git a/linux/drivers/media/dvb/frontends/atbm8830.c b/linux/drivers/media/dvb/frontends/atbm8830.c
--- a/linux/drivers/media/dvb/frontends/atbm8830.c
+++ b/linux/drivers/media/dvb/frontends/atbm8830.c
@@ -164,6 +164,10 @@
 static int set_agc_config(struct atbm_state *priv,
 	u8 min, u8 max, u8 hold_loop)
 {
+	/* no effect if both min and max are zero */
+	if (!min && !max)
+	    return 0;
+
 	atbm8830_write_reg(priv, REG_AGC_MIN, min);
 	atbm8830_write_reg(priv, REG_AGC_MAX, max);
 	atbm8830_write_reg(priv, REG_AGC_HOLD_LOOP, hold_loop);
@@ -227,11 +231,9 @@
 	/*Set IF frequency*/
 	set_if_freq(priv, cfg->if_freq);
 
-#if 0
 	/*Set AGC Config*/
 	set_agc_config(priv, cfg->agc_min, cfg->agc_max,
 		cfg->agc_hold_loop);
-#endif
 
 	/*Set static channel mode*/
 	set_static_channel_mode(priv);
diff --git a/linux/drivers/media/video/cx23885/cx23885-dvb.c b/linux/drivers/media/video/cx23885/cx23885-dvb.c
--- a/linux/drivers/media/video/cx23885/cx23885-dvb.c
+++ b/linux/drivers/media/video/cx23885/cx23885-dvb.c
@@ -555,6 +555,9 @@
 	.osc_clk_freq = 30400, /* in kHz */
 	.if_freq = 0, /* zero IF */
 	.zif_swap_iq = 1,
+	.agc_min = 0x2E,
+	.agc_max = 0xFF,
+	.agc_hold_loop = 0,
 };
 
 static struct max2165_config mygic_x8558pro_max2165_cfg1 = {
@@ -571,6 +574,9 @@
 	.osc_clk_freq = 30400, /* in kHz */
 	.if_freq = 0, /* zero IF */
 	.zif_swap_iq = 1,
+	.agc_min = 0x2E,
+	.agc_max = 0xFF,
+	.agc_hold_loop = 0,
 };
 
 static struct max2165_config mygic_x8558pro_max2165_cfg2 = {

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2009-11-28 11:36 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-11-28 11:36 [PATCH] atbm8830: use AGC setting from config David T. L. Wong

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox