--- Begin Message ---
Hello,
I recently acquired a tuner card and went about to get it working with linux when I found out it wasn't supported "out of the box". After a bit of lone struggling I went about my way to IRC. There I found mkrufky who pointed out another case with a similar card. After reading through a few mailing list threads I was able to find the patches � needed. Here are the results:
Card: AVerTV DVB-T Super 007
Company: AverMedia
Chipsets:
SAA7131E/03/G
CG9033 07
SF2105.1
TSG07012
TDA10046A
SC8574.1 12
ZSG
06101
8275AC1
CG4773
01
TPG07011
lspci -nv:
01:09.0 0480: 1131:7133 (rev d1)
Subsystem: 1461:f01d
Flags: bus master, medium devsel, latency 32, IRQ 209
Memory at e2002000 (32-bit, non-prefetchable) [size=2K]
Capabilities: [40] Power Management version 2
lspci -vv:
01:09.0 Multimedia controller: Philips Semiconductors SAA7133/SAA7135 Video Broadcast Decode
r (rev d1)
Subsystem: Avermedia Technologies Inc Unknown device f01d
Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR-
FastB2B-
Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >
SERR- <PERR-
Latency: 32 (21000ns min, 8000ns max)
Interrupt: pin A routed to IRQ 209
Region 0: Memory at e2002000 (32-bit, non-prefetchable) [size=2K]
Capabilities: [40] Power Management version 2
Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)
Status: D0 PME-Enable- DSel=0 DScale=1 PME-
patches and mailing list threads:
http://www.linuxtv.org/pipermail/linux-dvb/2007-August/019653.html
http://lists.zerezo.com/video4linux/msg19204.html
dmesg:
saa7130/34: v4l2 driver version 0.2.14 loaded
saa7133[0]: found at 0000:01:09.0, rev: 209, irq: 209, latency: 32, mmio: 0xe2002000
saa7133[0]: subsystem: 1461:f01d, board: Philips Tiger - S Reference design [card=109,insmod
option]
saa7133[0]: board init: gpio is 240000
tuner 2-004b: chip found @ 0x96 (saa7133[0])
tuner 2-004b: setting tuner address to 60
tuner 2-004b: type set to tda8290+75a
saa7133[0]: i2c eeprom 00: 61 14 1d f0 54 20 1c 00 43 43 a9 1c 55 d2 b2 92
saa7133[0]: i2c eeprom 10: ff ff ff ff ff 20 ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom 20: 01 40 01 32 32 01 01 43 88 ff 00 55 ff ff ff ff
saa7133[0]: i2c eeprom 30: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom 40: ff 21 00 c0 96 10 03 02 15 16 ff ff ff ff ff ff
saa7133[0]: i2c eeprom 50: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom 60: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom 70: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
tuner 2-004b: setting tuner address to 60
tuner 2-004b: type set to tda8290+75a
saa7133[0]: registered device video0 [v4l2]
saa7133[0]: registered device vbi0
saa7133[0]: registered device radio0
DVB: registering new adapter (saa7133[0])
DVB: registering frontend 0 (Philips TDA10046H DVB-T)...
tda1004x: setting up plls for 48MHz sampling clock
tda1004x: timeout waiting for DSP ready
tda1004x: found firmware revision 0 -- invalid
tda1004x: trying to boot from eeprom
tda1004x: found firmware revision 0 -- invalid
tda1004x: waiting for firmware upload...
tda1004x: found firmware revision 20 -- ok
I'm attaching a unified patch that contains both the get_firmware patch and the saa7134 patch. Patch is against latest mercurial version. To use apply the diff and then insert the module (after removing previous version) with "modprobe saa7134 card=109" and it should be all set (if you have gotten the firmware already).
Thanks for all the nice project and keep the nice work up. Hope to see this card working "out of the box" soon.
-bobbens
diff -r 278ff24d5531 linux/Documentation/dvb/get_dvb_firmware
--- a/linux/Documentation/dvb/get_dvb_firmware Thu Aug 09 12:02:30 2007 -0300
+++ b/linux/Documentation/dvb/get_dvb_firmware Sun Aug 12 00:33:42 2007 +0200
@@ -111,21 +111,21 @@ sub tda10045 {
}
sub tda10046 {
- my $sourcefile = "tt_budget_217g.zip";
- my $url = "http://www.technotrend.de/new/217g/$sourcefile";
- my $hash = "6a7e1e2f2644b162ff0502367553c72d";
- my $outfile = "dvb-fe-tda10046.fw";
- my $tmpdir = tempdir(DIR => "/tmp", CLEANUP => 1);
-
- checkstandard();
-
- wgetfile($sourcefile, $url);
- unzip($sourcefile, $tmpdir);
- extract("$tmpdir/software/OEM/PCI/App/ttlcdacc.dll", 0x3f731, 24478, "$tmpdir/fwtmp");
- verify("$tmpdir/fwtmp", $hash);
- copy("$tmpdir/fwtmp", $outfile);
-
- $outfile;
+ my $sourcefile = "TT_PCI_2.19h_28_11_2006.zip";
+ my $url = "http://technotrend-online.com/download/software/219/$sourcefile";
+ my $hash = "6a7e1e2f2644b162ff0502367553c72d";
+ my $outfile = "dvb-fe-tda10046.fw";
+ my $tmpdir = tempdir(DIR => "/tmp", CLEANUP => 1);
+
+ checkstandard();
+
+ wgetfile($sourcefile, $url);
+ unzip($sourcefile, $tmpdir);
+ extract("$tmpdir/TT_PCI_2.19h_28_11_2006/software/OEM/PCI/App/ttlcdacc.dll", 0x65389, 24478, "$tmpdir/fwtmp");
+ verify("$tmpdir/fwtmp", $hash);
+ copy("$tmpdir/fwtmp", $outfile);
+
+ $outfile;
}
sub tda10046lifeview {
diff -r 278ff24d5531 linux/drivers/media/video/saa7134/saa7134-cards.c
--- a/linux/drivers/media/video/saa7134/saa7134-cards.c Thu Aug 09 12:02:30 2007 -0300
+++ b/linux/drivers/media/video/saa7134/saa7134-cards.c Sun Aug 12 00:32:38 2007 +0200
@@ -3417,6 +3417,7 @@ struct saa7134_board saa7134_boards[] =
.vmux = 1,
.amux = TV,
.tv = 1,
+ .gpio = 0x0200000,
},{
.name = name_comp1,
.vmux = 3,
@@ -3429,7 +3430,7 @@ struct saa7134_board saa7134_boards[] =
.radio = {
.name = name_radio,
.amux = TV,
- .gpio = 0x0200000,
+ .gpio = 0x0000000,
},
},
[SAA7134_BOARD_AVERMEDIA_M102] = {
diff -r 278ff24d5531 linux/drivers/media/video/saa7134/saa7134-dvb.c
--- a/linux/drivers/media/video/saa7134/saa7134-dvb.c Thu Aug 09 12:02:30 2007 -0300
+++ b/linux/drivers/media/video/saa7134/saa7134-dvb.c Sun Aug 12 00:32:38 2007 +0200
@@ -631,7 +631,7 @@ static struct tda1004x_config philips_ti
.gpio_config = TDA10046_GP01_I,
.if_freq = TDA10046_FREQ_045,
.i2c_gate = 0x4b,
- .tuner_address = 0x61,
+ .tuner_address = 0x60,
.tuner_config = 2,
.antenna_switch= 1,
.request_firmware = philips_tda1004x_request_firmware
--- End Message ---