All of lore.kernel.org
 help / color / mirror / Atom feed
From: stef <stef.dev@free.fr>
To: linux-dvb@linuxtv.org
Subject: [linux-dvb] [PATCH][resend] Pinnacle Hybrid PCTV Pro (pctv310c) DVB-T support
Date: Fri, 5 Sep 2008 16:33:54 +0200	[thread overview]
Message-ID: <200809051633.54342.stef.dev@free.fr> (raw)

	Hello,

	this patch against latest mercurial makes DVB-T working on Pinnacle Hybrid PCTV Pro
 (pctv310c). 
	In cx88-dvb.c, a specific zl10353_config is created with the if2 inferred from the 
old comment in the currently used config. It is then used for attach, and i2c_gate_ctrl is set to NULL.
	The entry in cx88-cards.c is modified with GPIO gathered from windows with regspy, and DVB
enabled. The frontend is set to XC3028_FE_ZARLINK456 to match the zl10353_config.
	It is working great with the freeview channels I can receive.

Regards,
	Stef

Signed-off-by: Stéphane Voltz <stef.dev@free.fr>

diff -aur v4l-dvb/linux/drivers/media/video/cx88/cx88-cards.c v4l-dvb-pctv310c/linux/drivers/media/video/cx88/cx88-cards.c
--- v4l-dvb/linux/drivers/media/video/cx88/cx88-cards.c	2008-08-17 19:09:04.000000000 +0200
+++ v4l-dvb-pctv310c/linux/drivers/media/video/cx88/cx88-cards.c	2008-09-05 15:44:00.000000000 +0200
@@ -1479,15 +1479,26 @@
 		.name           = "Pinnacle Hybrid PCTV",
 		.tuner_type     = TUNER_XC2028,
 		.tuner_addr     = 0x61,
+		.radio_type     = TUNER_XC2028,
+		.radio_addr     = 0x61,
 		.input          = { {
 			.type   = CX88_VMUX_TELEVISION,
 			.vmux   = 0,
+			.gpio0  = 0x004ff,
+			.gpio1  = 0x010ff,
+			.gpio2  = 0x00001,
 		}, {
 			.type   = CX88_VMUX_COMPOSITE1,
 			.vmux   = 1,
+			.gpio0  = 0x004fb,
+			.gpio1  = 0x010ef,
+			.audioroute = 1,
 		}, {
 			.type   = CX88_VMUX_SVIDEO,
 			.vmux   = 2,
+			.gpio0  = 0x004fb,
+			.gpio1  = 0x010ef,
+			.audioroute = 1,
 		} },
 		.radio = {
 			.type   = CX88_RADIO,
@@ -1495,10 +1506,7 @@
 			.gpio1  = 0x010ff,
 			.gpio2  = 0x0ff,
 		},
-#if 0
-		/* needs some more GPIO work */
 		.mpeg           = CX88_MPEG_DVB,
-#endif
 	},
 	[CX88_BOARD_WINFAST_TV2000_XP_GLOBAL] = {
 		.name           = "Winfast TV2000 XP Global",
@@ -2483,6 +2491,10 @@
 		 * This board uses non-MTS firmware
 		 */
 		break;
+	case CX88_BOARD_PINNACLE_HYBRID_PCTV:
+		ctl->demod = XC3028_FE_ZARLINK456;
+		ctl->mts = 1;
+		break;
 	default:
 		ctl->demod = XC3028_FE_OREN538;
 		ctl->mts = 1;
diff -aur v4l-dvb/linux/drivers/media/video/cx88/cx88-dvb.c v4l-dvb-pctv310c/linux/drivers/media/video/cx88/cx88-dvb.c
--- v4l-dvb/linux/drivers/media/video/cx88/cx88-dvb.c	2008-08-17 19:09:04.000000000 +0200
+++ v4l-dvb-pctv310c/linux/drivers/media/video/cx88/cx88-dvb.c	2008-09-05 15:44:00.000000000 +0200
@@ -460,6 +460,12 @@
 	.tuner_callback	= cx88_tuner_callback,
 };
 
+static struct zl10353_config cx88_pinnacle_hybrid_pctv = {
+	.demod_address = (0x1e >> 1),
+	.no_tuner      = 1,
+	.if2           = 45600,
+};
+
 static struct zl10353_config cx88_geniatech_x8000_mt = {
        .demod_address = (0x1e >> 1),
        .no_tuner = 1,
@@ -855,10 +861,13 @@
 		break;
 	 case CX88_BOARD_PINNACLE_HYBRID_PCTV:
 		dev->dvb.frontend = dvb_attach(zl10353_attach,
-					       &cx88_geniatech_x8000_mt,
+					       &cx88_pinnacle_hybrid_pctv,
 					       &core->i2c_adap);
-		if (attach_xc3028(0x61, dev) < 0)
-			goto frontend_detach;
+		if (dev->dvb.frontend) {
+			dev->dvb.frontend->ops.i2c_gate_ctrl = NULL;
+			if (attach_xc3028(0x61, dev) < 0)
+				goto frontend_detach;
+		}
 		break;
 	 case CX88_BOARD_GENIATECH_X8000_MT:
 		dev->ts_gen_cntrl = 0x00;
	

_______________________________________________
linux-dvb mailing list
linux-dvb@linuxtv.org
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb

                 reply	other threads:[~2008-09-05 14:34 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=200809051633.54342.stef.dev@free.fr \
    --to=stef.dev@free.fr \
    --cc=linux-dvb@linuxtv.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.