[linux-dvb] Typhoon DVB-T Duo Digital/Analog Cardbus (saa7133 based)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hartmut Hackmann wrote:
> Hi, Jan
> 
>>Well, I've the analog part running now (composite, tv) with
>>sound, radio just makes noise, but sometimes I can hear a very faint
>>station in the noise.
> 
> 
> Oh, good! What is your base? You could save me time if you could point
> me to your version or just send it to me that i can merge it with my code.

Here it is. Basically it just adds the needed entries in saa7134-cards.c
and saa7134-dvb.c
Btw. there is a fan in the card which is enabled when booting windows to
keep the card cool. I suspect it's enabled via one of the gpio pins of
the saa7134. Is there a way to directly control these from userspace?
Where would I need to place a hook to do so?

>>What's the status? I've tried to add my card to the dvb driver.
>>That requests the firmware, which is uploaded, but the installation
>>fails.
>>
>>[4296591.648000] saa7133[0]: Trying to attachDVB: registering new adapter (saa7133[0]).
>>[4296591.649000] DVB: registering frontend 0 (Philips TDA10046H DVB-T)...
>>[4296597.188000] tda1004x: waiting for firmware upload (dvb-fe-tda10046.fw)...
>>[4296601.177000] tda1004x: firmware upload complete
>>[4296601.182000] tda1004x: firmware upload failed
>>
>>So - do I need another firmware image?
>>
> 
> No, you need a modified driver for the TDA10046. In most recent cards, the TDA
> runs with a 16MHz crystal instead of 4MHz. If the programming is not adapted,
> the DSP crashes while booting due to the far too high clock frequency.
> That's what you see. This is already supported by my driver but an additional
> change is necessary to bind the silicon tuner properly.

Well can you send me your current patches? I can try them immediately.
Do you have a datasheet for the tda10046? I cannot seem to find one.
Only this:
http://products.zarlink.com/product_profiles/MT352.htm
which claims to be compatible.

> I wil try to get a card let next week.

I can do the test-monkey till then ;-)

-- 
Jan
-------------- next part --------------
drivers/media/video/saa7134/saa7134-cards.c: needs update
drivers/media/video/saa7134/saa7134-dvb.c: needs update
drivers/media/video/saa7134/saa7134.h: needs update
Index: drivers/media/video/saa7134/saa7134-cards.c
===================================================================
--- 326774cd0818e893561a3e77fc57ad5ea320771a/drivers/media/video/saa7134/saa7134-cards.c  (mode:100644 sha1:180d3175ea5b9c0e81b0df4dd461db23a3d74c56)
+++ uncommitted/drivers/media/video/saa7134/saa7134-cards.c  (mode:100644)
@@ -1526,6 +1526,37 @@
 		.inputs         = {{
 			.name = name_tv,
 			.vmux = 1,
+			.amux = LINE1,
+//			.gpio = 0x0000,
+			.tv   = 1,
+                },{
+			.name = name_comp1,	/* Composite signal on S-Video input */
+			.vmux = 0,
+			.amux = LINE2,
+//			.gpio = 0x4000,
+		},{
+			.name = name_comp2,	/* Composite input */
+			.vmux = 3,
+			.amux = LINE2,
+//			.gpio = 0x4000,
+		},{
+			.name = name_svideo,	/* S-Video signal on S-Video input */
+			.vmux = 8,
+			.amux = LINE2,
+//			.gpio = 0x4000,
+		}},
+
+	},
+	[SAA7134_BOARD_FLYDVBTDUO_CARDBUS] = {
+		/* Typhoon DVB-T DUO Cardbus  */
+		.name           = "Typhoon DVB-T DUO Cardbus",
+		.audio_clock    = 0x00200000,
+		.tuner_type     = TUNER_PHILIPS_TDA8290,
+		.mpeg           = SAA7134_MPEG_DVB,
+//		.gpiomask       = 0xe000,
+		.inputs         = {{
+			.name = name_tv,
+			.vmux = 1,
 			.amux = TV,
 //			.gpio = 0x0000,
 			.tv   = 1,
@@ -1545,7 +1576,16 @@
 			.amux = LINE2,
 //			.gpio = 0x4000,
 		}},
+		.radio = {
+			.name = name_radio,
+			.amux = LINE2,
+		},
+		.mute = {
+			 .name = name_mute,
+			 .amux = LINE1,
+		},
 	},
+
 };
 const unsigned int saa7134_bcount = ARRAY_SIZE(saa7134_boards);
 
@@ -1839,6 +1879,13 @@
 		.subdevice    = 0x0306,
 		.driver_data  = SAA7134_BOARD_FLYDVBTDUO,
 
+ 	},{     /* typhoon dvb-t duo */
+		.vendor       = PCI_VENDOR_ID_PHILIPS,
+		.device       = PCI_DEVICE_ID_PHILIPS_SAA7133,
+		.subvendor    = 0x4e42,
+		.subdevice    = 0x0502,
+		.driver_data  = SAA7134_BOARD_FLYDVBTDUO_CARDBUS,
+
  	},{
 		/* --- boards without eeprom + subsystem ID --- */
                 .vendor       = PCI_VENDOR_ID_PHILIPS,
Index: drivers/media/video/saa7134/saa7134-dvb.c
===================================================================
--- 326774cd0818e893561a3e77fc57ad5ea320771a/drivers/media/video/saa7134/saa7134-dvb.c  (mode:100644 sha1:dd4a6c8ee65f187391707d8c8b7821ba4e658adf)
+++ uncommitted/drivers/media/video/saa7134/saa7134-dvb.c  (mode:100644)
@@ -209,6 +209,11 @@
 			printk("%s: Hmm, looks like this is the old MD7134 "
 			       "version without DVB-T support\n",dev->name);
 		break;
+	case SAA7134_BOARD_FLYDVBTDUO_CARDBUS:
+		printk("%s: Trying to attach to tda10046", dev->name);
+		dev->dvb.frontend = tda10046_attach(&medion_cardbus,
+						    &dev->i2c_adap);
+		break;
 	default:
 		printk("%s: Huh? unknown DVB card?\n",dev->name);
 		break;
Index: drivers/media/video/saa7134/saa7134.h
===================================================================
--- 326774cd0818e893561a3e77fc57ad5ea320771a/drivers/media/video/saa7134/saa7134.h  (mode:100644 sha1:ac90a985323608ff20fc95383d2fe040e3825118)
+++ uncommitted/drivers/media/video/saa7134/saa7134.h  (mode:100644)
@@ -178,6 +178,7 @@
 #define SAA7135_BOARD_ASUSTeK_TVFM7135 53
 #define SAA7134_BOARD_FLYTVPLATINUM_FM 54
 #define SAA7134_BOARD_FLYDVBTDUO 55
+#define SAA7134_BOARD_FLYDVBTDUO_CARDBUS 56
 
 #define SAA7134_MAXBOARDS 8
 #define SAA7134_INPUT_MAX 8

[Index of Archives]     [Linux Media]     [Video 4 Linux]     [Asterisk]     [Samba]     [Xorg]     [Xfree86]     [Linux USB]

  Powered by Linux