ubuntuusers.de

Terratec Cinergy HT PCI Treiber

Status: Ungelöst | Ubuntu-Version: Ubuntu 7.10 (Gutsy Gibbon)
Antworten |

rurudotorg

Anmeldungsdatum:
5. Juli 2008

Beiträge: Zähle...

Wohnort: Mainz

Auch von der neuen Distri nix neues...

[   18.175170] cx8800 0000:02:08.0: PCI INT A -> Link[APC1] -> GSI 16 (level, lo
w) -> IRQ 16
[   18.175858] cx88[0]: Your board isn't known (yet) to the driver.  You can
[   18.175860] cx88[0]: try to pick one of the existing card configs via
[   18.175861] cx88[0]: card=<n> insmod option.  Updating to the latest
[   18.175862] cx88[0]: version might help as well.
[   18.175867] cx88[0]: Here is a list of valid choices for the card=<n> insmod option:
[   18.175870] cx88[0]:    card=0 -> UNKNOWN/GENERIC
[   18.175873] cx88[0]:    card=1 -> Hauppauge WinTV 34xxx models
[   18.175876] cx88[0]:    card=2 -> GDI Black Gold
[   18.175878] cx88[0]:    card=3 -> PixelView
[   18.175880] cx88[0]:    card=4 -> ATI TV Wonder Pro

Weiter warten. Fernsehen wird ja auch im allgemeinen überbewertet ☺

Sabot

Anmeldungsdatum:
20. Oktober 2008

Beiträge: Zähle...

Wohnort: München

ich geh heute abend auf 8.10...

eishailiga

Avatar von eishailiga

Anmeldungsdatum:
31. Oktober 2006

Beiträge: 5401

Wohnort: Sauerland

Es gibt die Karte in zwei Ausführungen...mit dem saa7134 bzw. cx88 Chip..beide mit der PCI-ID 153b:1177...der saa7134 Chip wird unterstützt...der cx88 noch nicht...

Sabot

Anmeldungsdatum:
20. Oktober 2008

Beiträge: 6

Wohnort: München

genau! und leider geht es genau um die cx88 Variante, weil die wird mittlerweile nur noch verkauft. Und ist sicher eine der häufigeren Budget-Karten auf dem deutschen Markt.

rurudotorg

Anmeldungsdatum:
5. Juli 2008

Beiträge: 24

Wohnort: Mainz

...und da das Elend mit dieser Karte nun schon fast 1,5 Jahre anhält, habe ich sie flugs mal auf der "Blacklist" als nicht-funktionierend eingetragen: http://wiki.ubuntuusers.de/Hardware_blacklist

anothermike

Anmeldungsdatum:
15. November 2008

Beiträge: Zähle...

Hallo alle zusammen,

ich bin auch in die Treiberfalle gelaufen (hab mir nen Acer Aspire L5100 Mini Pc mi onBoard TV-Tuner Card geholt) und habe die letzten Tage versucht mit Anpassung der cx88-cards. und cx88.h meine Karte zum Laufen zu bekommen.

Ich habe die gleiche Karte mit einer etwas anderen SubvendorId: 12ab:4700.

Auch ich habe in cxx88-cards.c folgendes hinzugefügt:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
[CX88_BOARD_CONEXSYS] = {
      .name           = "Conexant Systems",
          .tuner_type     = TUNER_XC2028,
          .radio_type     = TUNER_XC2028,
          .tuner_addr     = 0x61,
          .radio_addr     = 0x61,
      .input          = {{
          .type   = CX88_VMUX_TELEVISION,
          .vmux   = 0,
      },{
          .type   = CX88_VMUX_COMPOSITE1,
          .vmux   = 2,
      },{
          .type   = CX88_VMUX_SVIDEO,
          .vmux   = 2,
      }},
      //.mpeg           = CX88_MPEG_BLACKBIRD
      .mpeg           = CX88_MPEG_DVB,          // bzw. einmal komplett weggelassen die .mpeg option
  },

Ich habe auch ein video0 und vbi0 device und kann mit: cat /dev/video0 > bla.mpg einen stream aufnehmen, der auch relativ groß ist.

Vorher mache ich einen Scan: scantv -a -c /dev/video0 -C /dev/vbi0

... und wähle danach einen channel ivtv-tune -c 7 /dev/video0: 175.250 MHz (Signal Detected)

Das müsste bei uns in Hannover hier im analogen Kabel-TV ARD sein. (mit der CX88_MPEG_BLACKBIRD Option erhalte ich auch ein video1 device, von dem ich aber nicht cat machen kann)

Wenn ich mir nun das aufgenommene mpeg-File angucke, erscheint nur ein wildes Durcheinander an farbigen Zeichen und Vierecken.

Ich denke, dass das ein Fein-Tuning Problem ist.

Auch sehr interessant ist folgender Thread in der video4linux-Gruppe: https://www.redhat.com/mailman/private/video4linux-list/2008-October/msg00324.html

Ich habe mein Anliegen auch in der video4linux Gruppe gepostet aber keine Antwort bekommen.

Wenn ich nicht von irgendeinem Profi nen Tipp kriege, müssen meine Bemühungen an diesem Punkt wohl leider enden, da ich nicht weiß, wie ich dieses konfuse Pixelbild interpretieren soll ☹

Beste Grüße Michael


$ lspci -nnv -d 14f1:*

04:07.0 Multimedia video controller [0400]: Conexant Systems, Inc. CX23880/1/2/3 PCI Video and Audio Decoder [14f1:8800] (rev 05)                     Subsystem: Yuan Yuan Enterprise Co., Ltd. Device [12ab:4700]                                                                                  Flags: medium devsel, IRQ 20                                                                                                                  Memory at fb000000 (32-bit, non-prefetchable) [size=16M]                                                                                      Capabilities: <access denied>                                                                                                                 Kernel modules: cx8800                                                                                                                
04:07.1 Multimedia controller [0480]: Conexant Systems, Inc. CX23880/1/2/3 PCI Video and Audio Decoder [Audio Port] [14f1:8801] (rev 05)
       Subsystem: Yuan Yuan Enterprise Co., Ltd. Device [12ab:4700]
       Flags: bus master, medium devsel, latency 64, IRQ 20
       Memory at fa000000 (32-bit, non-prefetchable) [size=16M]
       Capabilities: <access denied>
       Kernel driver in use: cx88_audio
       Kernel modules: cx88-alsa

04:07.2 Multimedia controller [0480]: Conexant Systems, Inc. CX23880/1/2/3 PCI Video and Audio Decoder [MPEG Port] [14f1:8802] (rev 05)
       Subsystem: Yuan Yuan Enterprise Co., Ltd. Device [12ab:4700]
       Flags: bus master, medium devsel, latency 64, IRQ 3
       Memory at f9000000 (32-bit, non-prefetchable) [size=16M]
       Capabilities: <access denied>
       Kernel modules: cx8802

$dmesg

13.035673] cx88/0: cx2388x v4l2 driver version 0.0.6 loaded
[   13.036184] cx8800 0000:04:07.0: PCI INT A -> GSI 20 (level, low) -> IRQ
20
[   13.036645] cx88[0]: subsystem: 12ab:4700, board: Conexant Systems
[card=79,autodetected], frontend(s): 1
[   13.036648] cx88[0]: TV tuner type 71, Radio tuner type 71
[   13.039615] cx88/2: cx2388x MPEG-TS Driver Manager version 0.0.6 loaded
[   13.071038] cx2388x alsa driver version 0.0.6 loaded
[   13.168939] tuner' 1-0061: chip found @ 0xc2 (cx88[0])
[   13.241954] xc2028 1-0061: creating new instance
[   13.241958] xc2028 1-0061: type set to XCeive xc2028/xc3028 tuner
[   13.241966] xc2028 1-0061: destroying instance
[   13.242065] xc2028 1-0061: creating new instance
[   13.242067] xc2028 1-0061: type set to XCeive xc2028/xc3028 tuner
[   13.242070] cx88[0]: Asking xc2028/3028 to load firmware xc3028-v27.fw
[   13.242083] cx88[0]/0: found at 0000:04:07.0, rev: 5, irq: 20, latency:
64, mmio: 0xfb000000
[   13.242229] cx88[0]/0: registered device video0 [v4l2]
[   13.242265] cx88[0]/0: registered device vbi0
[   13.242328] firmware: requesting xc3028-v27.fw
[   13.627695] xc2028 1-0061: Loading 80 firmware images from xc3028-v27.fw,
type: xc2028 firmware, ver 2.7
[   13.627812] cx88[0]: Calling XC2028/3028 callback
[   13.627814] cx88[0]: setting GPIO to TV!
[   14.371843] xc2028 1-0061: Loading firmware for type=BASE MTS (5), id
0000000000000000.
[   14.371847] cx88[0]: Calling XC2028/3028 callback
[   14.371849] cx88[0]: setting GPIO to TV!
[   16.195445] xc2028 1-0061: Loading firmware for type=MTS (4), id
000000000000b700.
[   16.244013] cx88[0]: Calling XC2028/3028 callback
[   16.364206] cx88[0]/2: cx2388x 8802 Driver Manager
[   16.364221] cx88-mpeg driver manager 0000:04:07.2: PCI INT A -> GSI 20
(level, low) -> IRQ 20
[   16.364232] cx88[0]/2: found at 0000:04:07.2, rev: 5, irq: 20, latency:
64, mmio: 0xf9000000
[   16.364240] cx8802_probe() allocating 1 frontend(s)
[   16.364399] cx88_audio 0000:04:07.1: PCI INT A -> GSI 20 (level, low) ->
IRQ 20
[   16.364422] cx88[0]/1: CX88x/0: ALSA support for cx2388x boards
[   16.402355] cx88/2: cx2388x dvb driver version 0.0.6 loaded
[   16.402359] cx88/2: registering cx8802 driver, type: dvb access: shared
[   16.402362] cx88[0]/2: subsystem: 12ab:4700, board: Conexant Systems
[card=79]
[   16.402365] cx88[0]/2: cx2388x based DVB/ATSC card
[   16.402368] cx88[0]/2: The frontend of your DVB/ATSC card isn't supported
yet
[   16.402371] cx88[0]/2: frontend initialization failed
[   16.402374] cx88[0]/2: dvb_register failed (err = -22)
[   16.402376] cx88[0]/2: cx8802 probe failed, err = -22

k1ngf1sher

Anmeldungsdatum:
13. September 2008

Beiträge: Zähle...

Hallo zusammen!

hab mich auch noch mal mit der karte auseinander gesetzt und bin auch so weit gekommen, es reicht aber nicht aus die karte in der cx88-cards.c u. cx88.h zu veröffentlichen. Es muss auch der passende demodulator/frontend zugewiesen werden und das ist bei 153b:1177 HT PCI MKII der MT352(zarlink).

Linux version 2.6.27.7 (root@SKYNET) (gcc version 4.2.4) #2 SMP Fri Nov 21 13:54:17 CET 2008

Linux video capture interface: v2.00
cx88/2: cx2388x MPEG-TS Driver Manager version 0.0.6 loaded
cx88[0]: subsystem: 153b:1177, board: TerraTec Cinergy HT PCI (Conexant chipset) [card=68,autodetected]
cx88[0]: TV tuner type 71, Radio tuner type 71
cx88/0: cx2388x v4l2 driver version 0.0.6 loaded
tuner' 0-0061: chip found @ 0xc2 (cx88[0])
xc2028 0-0061: creating new instance
xc2028 0-0061: type set to XCeive xc2028/xc3028 tuner
xc2028 0-0061: destroying instance
xc2028 0-0061: creating new instance
xc2028 0-0061: type set to XCeive xc2028/xc3028 tuner
cx88[0]: Asking xc2028/3028 to load firmware xc3028-v27.fw
cx88[0]/2: cx2388x 8802 Driver Manager
cx88-mpeg driver manager 0000:00:0b.2: PCI INT A -> GSI 19 (level, low) -> IRQ 19
cx88[0]/2: found at 0000:00:0b.2, rev: 5, irq: 19, latency: 32, mmio: 0xfd000000
cx8800 0000:00:0b.0: PCI INT A -> GSI 19 (level, low) -> IRQ 19
cx2388x alsa driver version 0.0.6 loaded
cx88[0]/0: found at 0000:00:0b.0, rev: 5, irq: 19, latency: 32, mmio: 0xfb000000
cx88[0]/0: registered device video0 [v4l2]
cx88[0]/0: registered device vbi0
firmware: requesting xc3028-v27.fw
xc2028 0-0061: Loading 80 firmware images from xc3028-v27.fw, type: xc2028 firmware, ver 2.7
cx88[0]: Calling XC2028/3028 callback
cx88[0]: setting GPIO to TV!
xc2028 0-0061: Loading firmware for type=BASE MTS (5), id 0000000000000000.
cx88[0]: Calling XC2028/3028 callback
cx88[0]: setting GPIO to TV!
xc2028 0-0061: Loading firmware for type=MTS (4), id 000000000000b700.
xc2028 0-0061: Loading SCODE for type=MTS LCD NOGD MONO IF SCODE HAS_IF_4500 (6002b004), id 000000000000b700.
cx88[0]: Calling XC2028/3028 callback
cx88_audio 0000:00:0b.1: PCI INT A -> GSI 19 (level, low) -> IRQ 19
cx88[0]/1: CX88x/0: ALSA support for cx2388x boards
cx88/2: cx2388x dvb driver version 0.0.6 loaded
cx88/2: registering cx8802 driver, type: dvb access: shared
cx88[0]/2: subsystem: 153b:1177, board: TerraTec Cinergy HT PCI (Conexant chipset) [card=68]
cx88[0]/2: cx2388x based DVB/ATSC card
cx88[0]/2: frontend initialization failed
cx88[0]/2: dvb_register failed (err = -22)
cx88[0]/2: cx8802 probe failed, err = -22

Linux SKYNET 2.6.27.7 #2 SMP Fri Nov 21 13:54:17 CET 2008 i686 Intel(R) Pentium(R) 4 CPU 3.20GHz GenuineIntel GNU/Linux

Also ist die zuweisung des frontends das problem (cx88-dvb.c), ich kenne die demodulator adresse nicht und weiss auch nicht, ob der mt352 auf dieser karte noch eine gesonderte initialisierung benötigt!

cx88-dvb.c

static struct mt352_config cx88_terratec_cinergy_ht_pci = {
	.demod_address = 0x0f,                                       ??????????????      
	.no_tuner      = 1,
};

	 case CX88_BOARD_TERRATEC_CINERGY_HT_PCI:
		dev->dvb.frontend = dvb_attach(mt352_attach,
					       &cx88_terratec_cinergy_ht_pci,
					       &core->i2c_adap);                      
		if (dev->dvb.frontend) {
			dev->dvb.frontend->ops.i2c_gate_ctrl = NULL;
			if (attach_xc3028(0x61, dev) < 0)
				goto frontend_detach;
		}
		break;

Wenn da draußen einer ein bisschen ahnung in c hätte, käme man der geschichte bestimmt noch ein wenig näher!!! vielleicht weiss ja einer von euch rat!

gruß k1ngf1sher

P.S. ich bin einfach nicht bereit mich von der karte fertig machen zu lassen und ich will von windows weg also bleibt mir nichts anderes übrig als das ding zu knacken! 👍

k1ngf1sher

Anmeldungsdatum:
13. September 2008

Beiträge: 11

Hallo leutz, muss mich entschuldigen, denn ich habe fälschlicherweise angenommen das man den angaben des windows treibers glauben schenken kann. In der .inf der TERRATEC CINERGY HT PCI MKII steht nämlich folgendes:

auszug: [Tuner.AddReg] ; Tuner Type: ; 1A ⇒ XCeive 3028 ; TunerModel: ; 0x8888 ⇒ XCeive 3028 + Zarlink MT352

nach stundenlanger rumprobiererei mustte ich feststellen das die geschichte mit dem MT352 ein richtig schöner griff ins braune ist. Also hab ich mir gedanken gemacht woran es liegt das ich dieses sch. teil nicht attachen kann. Bin dann auf die idee gekommen mir irgendwo nen I2c scanner zu besorgen, welchen ich dann auch irgendwann fand "i2c-Tools-3.0.1.tar.gz" den link habe ich gerade nicht zur hand. Kurzum, hab das ding kompiliert und siehe da:

root@SKYNET# i2cdetect -a 1
WARNING! This program can confuse your I2C bus, cause data loss and worse!
I will probe file /dev/i2c/1.
I will probe address range 0x00-0x7f.
Continue? [Y/n] y
     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
00: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 0f
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
50: 50 -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
60: -- UU -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 

Das frontend liegt wie bei den meisten karten bei $0f Also:

root@SKYNET# i2cdump 1 0x0f b
WARNING! This program can confuse your I2C bus, cause data loss and worse!
I will probe file /dev/i2c/1, address 0xf, mode byte
Continue? [Y/n] y
     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f    0123456789abcdef
00: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
50: 0c 44 46 15 0f 00 00 00 00 00 48 00 75 0d 0d 0d    ?DF??.....H.u???
60: 00 4d 0a 0f 0f 0f 0f c2 00 00 80 00 00 00 00 00    .M??????..?.....
70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 14    ...............?
80: 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14    ????????????????
90: 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14    ????????????????
a0: 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14    ????????????????
b0: 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14    ????????????????
c0: 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14    ????????????????
d0: 14 14 14 14 14 14 14 14 14 14 10 40 20 03 46 34    ???????????@ ?F4
e0: 47 1c 00 00 00 30 00 40 10 00 00 80 00 00 00 00    G?...0.@?..?....
f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................ 

da mir die ID des MT352 bekannt ist, $13 habe ich mich gefragt gefragt warum die hier nirgends zu finden ist, das einzige was hier ins auge sticht ist die $14. dann hab ich mir in /media/dvb/frontends die headers angeguckt und siehe da, die kennung $14 passt auf den ZL10353, ok ich muss zugeben das die vorgehensweise relativ dürftig ist! Da ich nur bröckchenweise c verstehe, weil ich früher nur in MC68000 assembler geproggt habe, denke ich das das in ordnung ist!

Nun voran modifikationen einbauen! cx88-cards.c:

....
	[CX88_BOARD_TERRATEC_CINERGY_HT_PCI] = {
		.name           = "TerraTec Cinergy HT PCI (Conexant chipset)",
        .tuner_type     = TUNER_XC2028,
        .radio_type     = TUNER_XC2028,
        .tuner_addr     = 0x61,
        .radio_addr     = 0x61,
		.input          = {{
			.type   = CX88_VMUX_TELEVISION,
			.vmux   = 0,
			.vmux   = 0,
			.gpio0  = 0x01000000,
			.gpio1  = 0x00000000,
			.gpio2  = 0x03000000,
		},{
			.type   = CX88_VMUX_COMPOSITE1,
			.vmux   = 2,
			.vmux   = 0,
			.gpio0  = 0x02000000,
			.gpio1  = 0x01000000,
			.gpio2  = 0x04000000,
		},{
			.type   = CX88_VMUX_SVIDEO,
			.vmux   = 2,
			.vmux   = 0,
			.gpio0  = 0x00000000,
			.gpio1  = 0x02000000,
			.gpio2  = 0x04000000,
		}},
		.mpeg           = CX88_MPEG_DVB,
	},
......

......
	},{
		.subvendor = 0x153b,
		.subdevice = 0x1177,
		.card      = CX88_BOARD_TERRATEC_CINERGY_HT_PCI,
	},
..... 

cx88-dvb.c:

.....
static struct mt352_config terratec_cinergy_ht_pci_mk2 = {
	.demod_address = 0x0f,
	.no_tuner      = 1,
};
.....

.....
	case CX88_BOARD_TERRATEC_CINERGY_HT_PCI:
		fe0->dvb.frontend = dvb_attach(zl10353_attach,
					       &terratec_cinergy_ht_pci_mk2,
					       &core->i2c_adap);
		if (fe0->dvb.frontend != NULL) {
			if (!dvb_attach(simple_tuner_attach, fe0->dvb.frontend,
				   &core->i2c_adap, 0x61,
				   TUNER_XC2028))
				goto frontend_detach;
		}
		break;
..... 

cx88.h:

.....
#define CX88_BOARD_TERRATEC_CINERGY_HT_PCI 76
.....

dmesg:

processor ACPI_CPU:00: registered as cooling_device0
processor ACPI_CPU:01: registered as cooling_device1
i2c-core: driver [dummy] registered
Linux video capture interface: v2.00
vt596_smbus 0000:00:11.0: VT596_smba = 0x400
i2c-adapter i2c-0: adapter [SMBus Via Pro adapter at 0400] registered
cx88/2: cx2388x MPEG-TS Driver Manager version 0.0.6 loaded
cx88[0]: subsystem: 153b:1177, board: TerraTec Cinergy HT PCI (Conexant chipset) [card=76,autodetected], frontend(s): 1
cx88[0]: TV tuner type 71, Radio tuner type 71
cx88/0: cx2388x v4l2 driver version 0.0.6 loaded
i2c-adapter i2c-1: adapter [cx88[0]] registered
cx2388x alsa driver version 0.0.6 loaded
i2c-core: driver [tuner'] registered
tuner' 1-0061: chip found @ 0xc2 (cx88[0])
i2c-adapter i2c-1: client [tuner'] registered with bus id 1-0061
i2c-adapter i2c-1: found ignore parameter for adapter 1, addr 0x6b
i2c-adapter i2c-1: found ignore parameter for adapter 1, addr 0x6f
i2c-core: driver [tuner] registered
i2c-adapter i2c-1: master_xfer[0] W, addr=0x50, len=1
i2c-adapter i2c-1: master_xfer[0] R, addr=0x50, len=256
xc2028 1-0061: creating new instance
xc2028 1-0061: type set to XCeive xc2028/xc3028 tuner
xc2028 1-0061: destroying instance
xc2028 1-0061: creating new instance
xc2028 1-0061: type set to XCeive xc2028/xc3028 tuner
cx88[0]: Asking xc2028/3028 to load firmware xc3028-v27.fw
cx88[0]/2: cx2388x 8802 Driver Manager
cx88-mpeg driver manager 0000:00:0b.2: PCI INT A -> GSI 19 (level, low) -> IRQ 19
cx88[0]/2: found at 0000:00:0b.2, rev: 5, irq: 19, latency: 32, mmio: 0xfd000000
cx8802_probe() allocating 1 frontend(s)
cx8800 0000:00:0b.0: PCI INT A -> GSI 19 (level, low) -> IRQ 19
cx88[0]/0: found at 0000:00:0b.0, rev: 5, irq: 19, latency: 32, mmio: 0xfb000000
cx88[0]/0: registered device video0 [v4l2]
cx88[0]/0: registered device vbi0
cx88/2: cx2388x dvb driver version 0.0.6 loaded
cx88/2: registering cx8802 driver, type: dvb access: shared
cx88[0]/2: subsystem: 153b:1177, board: TerraTec Cinergy HT PCI (Conexant chipset) [card=76]
cx88[0]/2: cx2388x based DVB/ATSC card
i2c-adapter i2c-1: firmware: requesting xc3028-v27.fw
i2c-adapter i2c-1: master_xfer[0] W, addr=0x0f, len=1
i2c-adapter i2c-1: master_xfer[1] R, addr=0x0f, len=1
i2c-adapter i2c-1: master_xfer[0] W, addr=0x0f, len=2
i2c-adapter i2c-1: master_xfer[0] R, addr=0x61, len=1
i2c-adapter i2c-1: master_xfer[0] W, addr=0x0f, len=2
tuner-simple 1-0061: creating new instance
xc2028 1-0061: Loading 80 firmware images from xc3028-v27.fw, type: xc2028 firmware, ver 2.7
cx88[0]: Calling XC2028/3028 callback
cx88[0]: setting GPIO to TV!
tuner-simple 1-0061: type set to 71 (Xceive xc2028/xc3028 tuner)
i2c-adapter i2c-1: master_xfer[0] W, addr=0x0f, len=2
i2c-adapter i2c-1: master_xfer[0] W, addr=0x0f, len=2
DVB: registering new adapter (cx88[0])
DVB: registering adapter 0 frontend 0 (Zarlink ZL10353 DVB-T)...
xc2028 1-0061: Loading firmware for type=BASE MTS (5), id 0000000000000000.
cx88[0]: Calling XC2028/3028 callback
cx88[0]: setting GPIO to TV!
xc2028 1-0061: Loading firmware for type=MTS (4), id 000000000000b700.
xc2028 1-0061: Loading SCODE for type=MTS LCD NOGD MONO IF SCODE HAS_IF_4500 (6002b004), id 000000000000b700.
xc2028 1-0061: Incorrect readback of firmware version.
cx88[0]: Calling XC2028/3028 callback
cx88[0]: setting GPIO to TV!
xc2028 1-0061: Loading firmware for type=BASE MTS (5), id 0000000000000000.
cx88[0]: Calling XC2028/3028 callback
cx88[0]: setting GPIO to TV!
xc2028 1-0061: Loading firmware for type=MTS (4), id 000000000000b700.
xc2028 1-0061: Loading SCODE for type=MTS LCD NOGD MONO IF SCODE HAS_IF_4500 (6002b004), id 000000000000b700.
xc2028 1-0061: Incorrect readback of firmware version.
i2c-adapter i2c-1: master_xfer[0] W, addr=0x61, len=2
i2c-adapter i2c-1: master_xfer[0] W, addr=0x61, len=4
cx88[0]: Calling XC2028/3028 callback
i2c-adapter i2c-1: master_xfer[0] W, addr=0x61, len=4
i2c-adapter i2c-1: master_xfer[0] W, addr=0x0f, len=2
cx88_audio 0000:00:0b.1: PCI INT A -> GSI 19 (level, low) -> IRQ 19
cx88[0]/1: CX88x/0: ALSA support for cx2388x boards
 

jetzt gibt es nur noch ein problem, die firmware die man mit dem tool aus /documentation/video4linux basteln kann ist zu alt. das "CinergyHTPCI.rom" file das bei der karte dabei ist, ist die richtige fw ver !!! 2.71 !!!!. Kann man so allerdings nicht verwenden, da die jungs von v4l ein anderes format (header über jedes einzelne frame von 80) gebastelt haben und die daten sich unterscheiden. Könnte man per hand machen, hab ich auch angefangen, da ich aber wie gesagt in C nicht die leuchte bin, kann ich mit der berechnung der hunks usw. nichts anfangen. Also wäre es echt toll wenn sich jemand fände der die fw bastelt! Die devices werden erstellt, wenn ich allerdings mit der "alten" fw 2.7 (nach ausserkraftsetzung der fw versions abfrage in tuner-xc2028.c) mit kaffeine einen scan starte hängt sich kaffeine weg, bei xine mit channels.conf dasselbe. Es muss! also eine modifizierte version der "CinergyHTPCI.rom" her. Naja dann wird man weiter sehen, aber ich bin wirklich guter dinge, hätte nicht gedacht das ich überhaupt so weit komme! Nun ist es also an jemandem von euch, tätig zu werden.

gruß k1ngf1sher

k1ngf1sher

Anmeldungsdatum:
13. September 2008

Beiträge: 11

hallo,

ich habe einen test mit 2.6.26.8 gemacht (vorher 2.6.28-rc6) diesmal aber ohne das "simple tuner" modul cx88-dvb.c:

case CX88_BOARD_TERRATEC_CINERGY_HT_PCI:
		dev->dvb.frontend = dvb_attach(zl10353_attach,
					       &terratec_cinergy_ht_pci_mk2_conf,
					       &core->i2c_adap);
		if (attach_xc3028(0x61, dev) < 0)
			goto frontend_detach;
		break;

resultat: keine fehlermeldung in bezug auf fw version und ich kann per kaffeine nen scan starten. nun allerdings mit folgender meldung:

root@SKYNET# kaffeine
/dev/dvb/adapter0/frontend0 : opened ( Zarlink ZL10353 DVB-T )
0 EPG plugins loaded for device 0:0.
Loaded epg data : 0 events (1 msecs)
root@SKYNET# DvbCam::probe(): /dev/dvb/adapter0/ca0: : Datei oder Verzeichnis nicht gefunden
Using DVB device 0:0 "Zarlink ZL10353 DVB-T"
tuning DVB-T to 538000000 Hz
inv:2 bw:0 fecH:2 fecL:9 mod:1 tm:1 gi:3 hier:0
...............

Not able to lock to the signal on the given frequency
Frontend closed
dvbsi: Cant tune DVB
Using DVB device 0:0 "Zarlink ZL10353 DVB-T"
tuning DVB-T to 586000000 Hz
inv:2 bw:0 fecH:2 fecL:9 mod:1 tm:1 gi:3 hier:0
...............

Not able to lock to the signal on the given frequency
Frontend closed
dvbsi: Cant tune DVB
Using DVB device 0:0 "Zarlink ZL10353 DVB-T"
tuning DVB-T to 722000000 Hz
inv:2 bw:0 fecH:2 fecL:9 mod:1 tm:1 gi:3 hier:0
.....

Ich denke das dies wiederum mit der firmware zusammenhängt. Also bleibt es dabei, neue firmware! Wer interesse und die selbe karte hat kann sich ja mal /linux-2.6.26.x/Documentation/video4linux/extract_xc3028.pl und die CinergyHTPCI.rom (auf der treibercd oder in windows/system32/drivers) angucken! gruß k1ngf1sher

Sabot

Anmeldungsdatum:
20. Oktober 2008

Beiträge: 6

Wohnort: München

Hallo Kingfisher!

Super, Du hast dir ja echt viel Arbeit gemacht, die ich leider nur zum Teil verstehe... Evtl. solltest du mal Deine Erfahrungen auf https://bugs.launchpad.net/ubuntu/+source/linux/+bug/237982 posten, vielleicht gibt es dann schneller ein Update für alle!

k1ngf1sher

Anmeldungsdatum:
13. September 2008

Beiträge: 11

Hi Sabot,

also so wie ich das hier so mitbekommen hab, warten alle auf das erscheinen neuer distro's in der hoffnung das die karte dann unterstützt wird. Da muss ich euch leider enttäuschen, denn wie in meinem vorherigen posting bereits erwähnt, habe ich den ersten test mit "linux-2.6.28-rc6" durchgeführt und da ist noch lange keine rede von der "TERRATEC CINERGY HT PCI MK2", genauso wenig befasst sich einer der dev's vom v4l damit. Ich bekomme täglich mailinglist updates und da hat sich noch keiner mit der problematik befasst. Habe auch schon selbst dorthin gemailt, aber wenn dich da keiner kennt, gehst du unter, mal davon abgesehen das es mit meinen C programmierkenntnissen nicht allzu weit her ist. Ich gehe an solche geschichten etwas anders ran meine devise ist: "Learning by doing!" und langsam dazu lernen. Mit meinen forenkenntnissen ist das auch noch so eine sache, hab da wohl noch jede menge zu lernen. Egal fakt ist, das wir jemanden benötigen der in der lage ist die firmware umzumodeln(chunk berechnung usw.), denn da hörts bei mir im moment auf! Ich hatte das schon ansatzweise versucht, als referenz die 2.7 version, klappt aber nur bis zu einem gewissen punkt, denn in den ersten paar frames ist die headergestaltung relativ einfach. Beginn des frames mit: Type 4 bytes, Id 8 bytes,Size 4 bytes,Chunk 4 bytes 0x2a 0x02 ...daten.... und ende bei 0x8c das ändert sich aber irgendwann und ich verstehe die die berechnung der besagten chunks nicht. Es wird sich doch bestimmt jemand finden, der das auf die reihe kriegt, hoffe ich zumindest. Bis dahin werde ich es weiter versuchen und mailen irgendwann wird sich schon was tun. Hätte vor ein paar monaten ja auch noch nicht gedacht das ich es bis hierhin schaffe. Also immer weiter nachen, dann klappts. gruß k1ngf1sher

Sabot

Anmeldungsdatum:
20. Oktober 2008

Beiträge: 6

Wohnort: München

Hallo k1ngf1sher,

ich finde deinen Ansatz wunderbar und er entspricht ja auch völlig der OpenSource Idee! Leider muss ich erstmal "Linux-Basics learning by doing" machen.

Was mir Hoffnung gemacht, ist das ein Ubuntu-Kernel-Developer seit ein paar Tagen auf unseren "Bug" angesetzt ist und der hat auch schon einige seiner anderen Bugfixes commited. Deswegen hoffe ich das der sich jetzt daran macht die entsprechenden Kernel- und etc. Updates vorzunehmen... Ich hatte nämlich damit gerechnet das der "Bug" beim Ubuntu-Team abgewiesen/vertagt wird, weil es ja eigentlich eine Aufgabe für v4l-Developer wäre. Aber das schöne ist ja das in der OpenSource Welt alles zusammen fließt. So weit so gut, ich werde warten und derweil meine alte Analogkarte ohne RC nutzen. Muss nämlich noch ne Menge FORTRAN (Alte Schule!) programmieren.

Gruß, Sabot

wienczny

Anmeldungsdatum:
26. November 2008

Beiträge: 11

Ich habe vor ein paar Wochen auch angefangen mich mit dem Treiberproblem zu beschäftigen. Heute hab ich auch endlich eine Antwort auf meine Mail zur Mailingliste bekommen. Mein Patch ist aktuell ähnlich weit, wie der von k1ngf1sher. Wir sollten mal versuchen das zusammen zu Ende zu bekommen.

Also bei mir sieht das aktuell so aus:

Die Hardware wird initialisiert → Es tauchen die entsprechenden Devices unter /dev auf. Ich verwende scan aus den dvb-utils zum testen. Leider scheint der Tuner kein lock auf einem Transponder zu bekommen. Chehab (einer der Maintainer von LinuxTV) sagte die GPIO-Werte wären für diese Karten von besonderer Wichtigkeit.

k1ngf1sher woher hast du deine GPIO-Werte? Bist du dir bei denen sicher?

k1ngf1sher

Anmeldungsdatum:
13. September 2008

Beiträge: 11

Hi wienczny, zu den GPIO werten kann ich dir leider nicht viel sagen, da ich den block irgendwann einmal so aus einem anderen src entnommen habe. Also ist es durchaus möglich, das sie nicht korrekt sind. Habe schon versucht dazu irgendwas zu finden, leider erfolglos. Denn ich habe mich auch schon gefragt ob das die richtigen werte sind, ich finde das original dem ich diese definition entnommen habe auch nicht mehr. Also wäre dies das nächste zu lösende problem. Wie hat sich denn der mchehab zu der problematik geäußert??? gruß k1ngf1sher

wienczny

Anmeldungsdatum:
26. November 2008

Beiträge: 11

So richtig viel weiter bin ich noch nicht gekommen. Ich habe meinen aktuellen Patch an http://stephan.wienczny.de/index.php?/archives/6-Terratec-Cinergy-HT-PCI-MKII-mit-Linux.html angehängt. Da ich hier in der Gegend kein Analogfernsehen mehr gesendet wird wäre es toll, wenn mal jemand das mit dem Patch und Analogfernsehen ausprobieren könnte. Da der Treiber noch keine Analoge Sendersuche unterstütz müsst ihr also die Frequenz des Senders besorgen und dann unter Linux mit einem Programm ausprobieren ob es funktionert.