public inbox for linux-media@vger.kernel.org
 help / color / mirror / Atom feed
* [linux-dvb] Initial work on: TerraTec Cinergy S PCI [14f1:8800]
@ 2008-07-15 23:55 Julian Picht
  0 siblings, 0 replies; only message in thread
From: Julian Picht @ 2008-07-15 23:55 UTC (permalink / raw)
  To: linux-dvb; +Cc: abraham.manu

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

Hi List,

if is there anybody with a TerraTec Cinergy S PCI please try the 
attached patch (against current hg) to test if the vertical transponders 
work. Voltage switching is not implemented so horizontal transponders 
won't work.

With this patch applied I can tune. On some channels a signal is 
detected but FE_LOCK fails. I never used this satellite receiver 
installation before, so I don't know if it actually works. I would be 
REALLY happy if ANYONE could try this!

Many thanks to Manu Abraham for his mb86a16 tuner driver implementation, 
which actually seems to work with the cx88 driver with no problems.

ATTENTION: This patch is a hack! Don't use it if you don't know what you 
are doing. Don't expect it to add real support for the mentioned pci 
card. This driver is very experimental and in a very early state of 
development.

Regards,
Julian Picht

[-- Attachment #2: s_pci.diff --]
[-- Type: text/x-patch, Size: 4080 bytes --]

diff -r 0ebffe1cc136 linux/drivers/media/dvb/frontends/Kconfig
--- a/linux/drivers/media/dvb/frontends/Kconfig	Sat Jul 12 16:50:43 2008 -0300
+++ b/linux/drivers/media/dvb/frontends/Kconfig	Mon Jul 14 16:16:54 2008 +0200
@@ -394,4 +394,11 @@
 	help
 	  An SEC control chip.
 
+config DVB_MB86A16
+	tristate "Fujitsu MB86A16 based"
+	depends on DVB_CORE && I2C
+	default m
+	help
+	  A DVB-S/DSS tuner module. Say Y when you want to support this frontend.
+
 endmenu
diff -r 0ebffe1cc136 linux/drivers/media/dvb/frontends/Makefile
--- a/linux/drivers/media/dvb/frontends/Makefile	Sat Jul 12 16:50:43 2008 -0300
+++ b/linux/drivers/media/dvb/frontends/Makefile	Mon Jul 14 16:16:54 2008 +0200
@@ -48,3 +48,4 @@
 obj-$(CONFIG_DVB_AU8522) += au8522.o
 obj-$(CONFIG_DVB_TDA10048) += tda10048.o
 obj-$(CONFIG_DVB_S5H1411) += s5h1411.o
+obj-$(CONFIG_DVB_MB86A16) += mb86a16.o
diff -r 0ebffe1cc136 linux/drivers/media/video/cx88/Kconfig
--- a/linux/drivers/media/video/cx88/Kconfig	Sat Jul 12 16:50:43 2008 -0300
+++ b/linux/drivers/media/video/cx88/Kconfig	Mon Jul 14 16:16:54 2008 +0200
@@ -59,6 +59,7 @@
 	select DVB_ISL6421 if !DVB_FE_CUSTOMISE
 	select MEDIA_TUNER_SIMPLE if !DVB_FE_CUSTOMISE
 	select DVB_S5H1411 if !DVB_FE_CUSTOMISE
+	select DVB_MB86A16 if !DVB_FE_CUSTOMISE
 	---help---
 	  This adds support for DVB/ATSC cards based on the
 	  Conexant 2388x chip.
diff -r 0ebffe1cc136 linux/drivers/media/video/cx88/cx88-cards.c
--- a/linux/drivers/media/video/cx88/cx88-cards.c	Sat Jul 12 16:50:43 2008 -0300
+++ b/linux/drivers/media/video/cx88/cx88-cards.c	Mon Jul 14 16:16:54 2008 +0200
@@ -1701,6 +1701,26 @@
 		},
 		.mpeg           = CX88_MPEG_DVB,
 	},
+	/* Nothing working :(
+	 */
+	[CX88_BOARD_TERRATEC_S_PCI] = {
+		.name           = "TerraTec CINERGY S PCI",
+		.tuner_type     = UNSET,
+		.radio_type     = UNSET,
+		.tuner_addr	= ADDR_UNSET,
+		.radio_addr	= ADDR_UNSET,
+		.input          = { {
+			.type   = CX88_VMUX_TELEVISION,
+			.vmux   = 0,
+		}, {
+			.type   = CX88_VMUX_COMPOSITE1,
+			.vmux   = 1,
+		}, {
+			.type   = CX88_VMUX_SVIDEO,
+			.vmux   = 2,
+		} },
+		.mpeg           = CX88_MPEG_DVB,
+	},
 };
 
 /* ------------------------------------------------------------------ */
@@ -2050,6 +2070,10 @@
 		.subvendor = 0x17de,
 		.subdevice = 0x08c1,
 		.card      = CX88_BOARD_KWORLD_ATSC_120,
+	}, {
+		.subvendor = 0x153b,
+		.subdevice = 0x117a,
+		.card      = CX88_BOARD_TERRATEC_S_PCI,
 	},
 };
 
diff -r 0ebffe1cc136 linux/drivers/media/video/cx88/cx88-dvb.c
--- a/linux/drivers/media/video/cx88/cx88-dvb.c	Sat Jul 12 16:50:43 2008 -0300
+++ b/linux/drivers/media/video/cx88/cx88-dvb.c	Mon Jul 14 16:16:54 2008 +0200
@@ -49,6 +49,7 @@
 #include "tuner-simple.h"
 #include "tda9887.h"
 #include "s5h1411.h"
+#include "mb86a16.h"
 
 MODULE_DESCRIPTION("driver for cx2388x based DVB cards");
 MODULE_AUTHOR("Chris Pascoe <c.pascoe@itee.uq.edu.au>");
@@ -487,6 +488,16 @@
 	.tuner_callback = cx88_tuner_callback,
 };
 
+int mb86_cx88_set_voltage(struct dvb_frontend *fe, fe_sec_voltage_t voltage)
+{
+	return 0;
+};
+
+static struct mb86a16_config cinergy_s_pci_config = {
+	.demod_address = 0x08,
+	.set_voltage   = mb86_cx88_set_voltage,
+};
+
 static int attach_xc3028(u8 addr, struct cx8802_dev *dev)
 {
 	struct dvb_frontend *fe;
@@ -891,6 +902,11 @@
 				goto frontend_detach;
 		}
 		break;
+	case CX88_BOARD_TERRATEC_S_PCI:
+		dev->dvb.frontend = dvb_attach(mb86a16_attach,
+					       &cinergy_s_pci_config,
+					       &core->i2c_adap);
+		break;
 	default:
 		printk(KERN_ERR "%s/2: The frontend of your DVB/ATSC card isn't supported yet\n",
 		       core->name);
diff -r 0ebffe1cc136 linux/drivers/media/video/cx88/cx88.h
--- a/linux/drivers/media/video/cx88/cx88.h	Sat Jul 12 16:50:43 2008 -0300
+++ b/linux/drivers/media/video/cx88/cx88.h	Mon Jul 14 16:16:54 2008 +0200
@@ -222,6 +222,7 @@
 #define CX88_BOARD_DVICO_FUSIONHDTV_7_GOLD 65
 #define CX88_BOARD_PROLINK_PV_8000GT       66
 #define CX88_BOARD_KWORLD_ATSC_120         67
+#define CX88_BOARD_TERRATEC_S_PCI          68
 
 enum cx88_itype {
 	CX88_VMUX_COMPOSITE1 = 1,

[-- Attachment #3: Type: text/plain, Size: 150 bytes --]

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

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

only message in thread, other threads:[~2008-07-15 23:56 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-07-15 23:55 [linux-dvb] Initial work on: TerraTec Cinergy S PCI [14f1:8800] Julian Picht

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