Trying to get Terratec Cinergy T XS to work

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

 



Hi all!
  I own a USB DVB-T receiver, Terratec Cinergy T XS, (0ccd:0043) which
as far as I can tell from google searches used to work with the old
"em28xx-new" driver.

I've downloaded the old driver from
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/460636/comments/2

and tried to modify the current media_tree drivers accordingly (please
see the attached patch), but I get an error when initializing the frontend:

=====================
Oct 20 19:33:20 mapperone kernel: [25479.846347] usb 2-1.1: new
high-speed USB device number 6 using ehci-pci
Oct 20 19:33:20 mapperone kernel: [25479.951208] usb 2-1.1: New USB
device found, idVendor=0ccd, idProduct=0043
Oct 20 19:33:20 mapperone kernel: [25479.951215] usb 2-1.1: New USB
device strings: Mfr=2, Product=1, SerialNumber=0
Oct 20 19:33:20 mapperone kernel: [25479.951220] usb 2-1.1: Product:
Cinergy T USB XS
Oct 20 19:33:20 mapperone kernel: [25479.951223] usb 2-1.1:
Manufacturer: TerraTec Electronic GmbH
Oct 20 19:33:20 mapperone mtp-probe: checking bus 2, device 6:
"/sys/devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.1"
Oct 20 19:33:20 mapperone mtp-probe: bus: 2, device: 6 was not an MTP device
Oct 20 19:33:20 mapperone kernel: [25479.982735] em28xx: New device
TerraTec Electronic GmbH Cinergy T USB XS @ 480 Mbps (0ccd:0043,
interface 0, class 0)
Oct 20 19:33:20 mapperone kernel: [25479.982739] em28xx: Video interface
0 found: isoc
Oct 20 19:33:20 mapperone kernel: [25479.982740] em28xx: DVB interface 0
found: isoc
Oct 20 19:33:20 mapperone kernel: [25479.982859] em28xx: chip ID is em2870
Oct 20 19:33:20 mapperone kernel: [25480.110080] em2870 #0: EEPROM ID =
1a eb 67 95, EEPROM hash = 0x084c44df
Oct 20 19:33:20 mapperone kernel: [25480.110085] em2870 #0: EEPROM info:
Oct 20 19:33:20 mapperone kernel: [25480.110087] em2870 #0: 	No audio on
board.
Oct 20 19:33:20 mapperone kernel: [25480.110089] em2870 #0: 	500mA max power
Oct 20 19:33:20 mapperone kernel: [25480.110092] em2870 #0: 	Table at
offset 0x06, strings=0x246a, 0x348e, 0x0000
Oct 20 19:33:20 mapperone kernel: [25480.110096] em2870 #0: Identified
as Terratec Cinergy T XS (card=43)
Oct 20 19:33:20 mapperone kernel: [25480.110099] em2870 #0: analog set
to isoc mode.
Oct 20 19:33:20 mapperone kernel: [25480.110101] em2870 #0: dvb set to
isoc mode.
Oct 20 19:33:20 mapperone kernel: [25480.110149] usbcore: registered new
interface driver em28xx
Oct 20 19:33:20 mapperone kernel: [25480.113975] em2870 #0: Registering
V4L2 extension
Oct 20 19:33:20 mapperone kernel: [25480.118352] Chip ID is not zero. It
is not a TEA5767
Oct 20 19:33:20 mapperone kernel: [25480.118361] tuner 7-0060: Tuner -1
found with type(s) Radio TV.
Oct 20 19:33:20 mapperone kernel: [25480.118390] xc2028 7-0060: creating
new instance
Oct 20 19:33:20 mapperone kernel: [25480.118397] xc2028 7-0060: type set
to XCeive xc2028/xc3028 tuner
Oct 20 19:33:20 mapperone kernel: [25480.118453] xc2028 7-0060: Loading
80 firmware images from xc3028-v27.fw, type: xc2028 firmware, ver 2.7
Oct 20 19:33:21 mapperone kernel: [25480.166568] xc2028 7-0060: Loading
firmware for type=BASE (1), id 0000000000000000.
Oct 20 19:33:22 mapperone kernel: [25481.248675] xc2028 7-0060: Loading
firmware for type=(0), id 000000000000b700.
Oct 20 19:33:22 mapperone kernel: [25481.266071] SCODE (20000000), id
000000000000b700:
Oct 20 19:33:22 mapperone kernel: [25481.266078] xc2028 7-0060: Loading
SCODE for type=MONO SCODE HAS_IF_4320 (60008000), id 0000000000008000.
Oct 20 19:33:22 mapperone kernel: [25481.270699] xc2028 7-0060:
Incorrect readback of firmware version.
Oct 20 19:33:22 mapperone kernel: [25481.371524] xc2028 7-0060: Loading
firmware for type=BASE (1), id 0000000000000000.
Oct 20 19:33:23 mapperone kernel: [25482.449292] xc2028 7-0060: Loading
firmware for type=(0), id 000000000000b700.
Oct 20 19:33:23 mapperone kernel: [25482.466803] SCODE (20000000), id
000000000000b700:
Oct 20 19:33:23 mapperone kernel: [25482.466811] xc2028 7-0060: Loading
SCODE for type=MONO SCODE HAS_IF_4320 (60008000), id 0000000000008000.
Oct 20 19:33:23 mapperone kernel: [25482.471431] xc2028 7-0060:
Incorrect readback of firmware version.
Oct 20 19:33:23 mapperone kernel: [25482.572622] xc2028 7-0060: Loading
firmware for type=BASE (1), id 0000000000000000.
Oct 20 19:33:24 mapperone kernel: [25483.650635] xc2028 7-0060: Loading
firmware for type=(0), id 000000000000b700.
Oct 20 19:33:24 mapperone kernel: [25483.667777] SCODE (20000000), id
000000000000b700:
Oct 20 19:33:24 mapperone kernel: [25483.667784] xc2028 7-0060: Loading
SCODE for type=MONO SCODE HAS_IF_4320 (60008000), id 0000000000008000.
Oct 20 19:33:24 mapperone kernel: [25483.672770] xc2028 7-0060:
Incorrect readback of firmware version.
Oct 20 19:33:24 mapperone kernel: [25483.773478] xc2028 7-0060: Loading
firmware for type=BASE (1), id 0000000000000000.
Oct 20 19:33:25 mapperone kernel: [25484.851617] xc2028 7-0060: Loading
firmware for type=(0), id 000000000000b700.
Oct 20 19:33:25 mapperone kernel: [25484.869042] SCODE (20000000), id
000000000000b700:
Oct 20 19:33:25 mapperone kernel: [25484.869050] xc2028 7-0060: Loading
SCODE for type=MONO SCODE HAS_IF_4320 (60008000), id 0000000000008000.
Oct 20 19:33:25 mapperone kernel: [25484.873894] xc2028 7-0060:
Incorrect readback of firmware version.
Oct 20 19:33:25 mapperone kernel: [25484.974459] xc2028 7-0060: Loading
firmware for type=BASE (1), id 0000000000000000.
Oct 20 19:33:26 mapperone kernel: [25486.048343] xc2028 7-0060: Loading
firmware for type=(0), id 000000000000b700.
Oct 20 19:33:26 mapperone kernel: [25486.065594] SCODE (20000000), id
000000000000b700:
Oct 20 19:33:26 mapperone kernel: [25486.065603] xc2028 7-0060: Loading
SCODE for type=MONO SCODE HAS_IF_4320 (60008000), id 0000000000008000.
Oct 20 19:33:26 mapperone kernel: [25486.070111] xc2028 7-0060:
Incorrect readback of firmware version.
Oct 20 19:33:27 mapperone kernel: [25486.171441] xc2028 7-0060: Loading
firmware for type=BASE (1), id 0000000000000000.
Oct 20 19:33:28 mapperone kernel: [25487.249074] xc2028 7-0060: Loading
firmware for type=(0), id 000000000000b700.
Oct 20 19:33:28 mapperone kernel: [25487.266062] SCODE (20000000), id
000000000000b700:
Oct 20 19:33:28 mapperone kernel: [25487.266071] xc2028 7-0060: Loading
SCODE for type=MONO SCODE HAS_IF_4320 (60008000), id 0000000000008000.
Oct 20 19:33:28 mapperone kernel: [25487.270473] xc2028 7-0060:
Incorrect readback of firmware version.
Oct 20 19:33:28 mapperone kernel: [25487.372459] xc2028 7-0060: Loading
firmware for type=BASE (1), id 0000000000000000.
Oct 20 19:33:29 mapperone kernel: [25488.450426] xc2028 7-0060: Loading
firmware for type=(0), id 000000000000b700.
Oct 20 19:33:29 mapperone kernel: [25488.467550] SCODE (20000000), id
000000000000b700:
Oct 20 19:33:29 mapperone kernel: [25488.467559] xc2028 7-0060: Loading
SCODE for type=MONO SCODE HAS_IF_4320 (60008000), id 0000000000008000.
Oct 20 19:33:29 mapperone kernel: [25488.472077] xc2028 7-0060:
Incorrect readback of firmware version.
Oct 20 19:33:29 mapperone kernel: [25488.573395] xc2028 7-0060: Loading
firmware for type=BASE (1), id 0000000000000000.
Oct 20 19:33:30 mapperone kernel: [25489.651157] xc2028 7-0060: Loading
firmware for type=(0), id 000000000000b700.
Oct 20 19:33:30 mapperone kernel: [25489.668147] SCODE (20000000), id
000000000000b700:
Oct 20 19:33:30 mapperone kernel: [25489.668156] xc2028 7-0060: Loading
SCODE for type=MONO SCODE HAS_IF_4320 (60008000), id 0000000000008000.
Oct 20 19:33:30 mapperone kernel: [25489.672651] xc2028 7-0060:
Incorrect readback of firmware version.
Oct 20 19:33:30 mapperone kernel: [25489.774369] xc2028 7-0060: Loading
firmware for type=BASE (1), id 0000000000000000.
Oct 20 19:33:31 mapperone kernel: [25490.848007] xc2028 7-0060: Loading
firmware for type=(0), id 000000000000b700.
Oct 20 19:33:31 mapperone kernel: [25490.864749] SCODE (20000000), id
000000000000b700:
Oct 20 19:33:31 mapperone kernel: [25490.864758] xc2028 7-0060: Loading
SCODE for type=MONO SCODE HAS_IF_4320 (60008000), id 0000000000008000.
Oct 20 19:33:31 mapperone kernel: [25490.869146] xc2028 7-0060:
Incorrect readback of firmware version.
Oct 20 19:33:31 mapperone kernel: [25490.993349] em2870 #0: V4L2 video
device registered as video0
Oct 20 19:33:31 mapperone kernel: [25490.993355] em2870 #0: V4L2
extension successfully initialized
Oct 20 19:33:31 mapperone kernel: [25490.993359] em28xx: Registered
(Em28xx v4l2 Extension) extension
Oct 20 19:33:31 mapperone kernel: [25490.998127] em2870 #0: Binding DVB
extension
Oct 20 19:33:31 mapperone kernel: [25491.027059] zl10353_read_register:
readreg error (reg=127, ret==-6)
Oct 20 19:33:31 mapperone kernel: [25491.027380] mt352_read_register:
readreg error (reg=127, ret==-6)
Oct 20 19:33:31 mapperone kernel: [25491.027395] em2870 #0: /2: dvb
frontend not attached. Can't attach xc3028
Oct 20 19:33:31 mapperone kernel: [25491.027410] em28xx: Registered
(Em28xx dvb Extension) extension
=====================

As you can see, in my patch I added a couple of printk to
zl10353_init(), but I don't see them in the logs (while I can definitely
see that my em28xx driver is otherwise being used, as with the official
one I don't even see the "zl10353_read_register" line). Can someone
please guide me to debug the issue?

I found an old post to this ML where a user reports a very similar log
file, but without replies:
https://www.mail-archive.com/linux-media@xxxxxxxxxxxxxxx/msg13180.html

Any suggestions on what I could try?

Ciao,
  Alberto

-- 
http://blog.mardy.it <- geek in un lingua international!
diff --git a/drivers/media/dvb-frontends/zl10353.c b/drivers/media/dvb-frontends/zl10353.c
index ef9764a..b7558b2 100644
--- a/drivers/media/dvb-frontends/zl10353.c
+++ b/drivers/media/dvb-frontends/zl10353.c
@@ -572,12 +572,14 @@ static int zl10353_init(struct dvb_frontend *fe)
 	/* Do a "hard" reset if not already done */
 	if (zl10353_read_register(state, 0x50) != zl10353_reset_attach[1] ||
 	    zl10353_read_register(state, 0x51) != zl10353_reset_attach[2]) {
+		printk("zl10353: performing reset\n");
 		zl10353_write(fe, zl10353_reset_attach,
 				   sizeof(zl10353_reset_attach));
 		if (debug_regs)
 			zl10353_dump_regs(fe);
 	}
 
+	printk("zl10353: init complete\n");
 	return 0;
 }
 
diff --git a/drivers/media/usb/em28xx/em28xx-cards.c b/drivers/media/usb/em28xx/em28xx-cards.c
index 3940046..1a77050 100644
--- a/drivers/media/usb/em28xx/em28xx-cards.c
+++ b/drivers/media/usb/em28xx/em28xx-cards.c
@@ -1045,9 +1045,11 @@ struct em28xx_board em28xx_boards[] = {
 
 	[EM2870_BOARD_TERRATEC_XS] = {
 		.name         = "Terratec Cinergy T XS",
-		.valid        = EM28XX_BOARD_NOT_VALIDATED,
+		/*.valid        = EM28XX_BOARD_NOT_VALIDATED,*/
 		.tuner_type   = TUNER_XC2028,
 		.tuner_gpio   = default_tuner_gpio,
+		.has_dvb      = 1,
+		.dvb_gpio     = default_digital,
 	},
 	[EM2870_BOARD_TERRATEC_XS_MT2060] = {
 		.name         = "Terratec Cinergy T XS (MT2060)",
diff --git a/drivers/media/usb/em28xx/em28xx-dvb.c b/drivers/media/usb/em28xx/em28xx-dvb.c
index 357be76..b94b903 100644
--- a/drivers/media/usb/em28xx/em28xx-dvb.c
+++ b/drivers/media/usb/em28xx/em28xx-dvb.c
@@ -1121,6 +1121,7 @@ static int em28xx_dvb_init(struct em28xx *dev)
 			goto out_free;
 		}
 		break;
+	case EM2870_BOARD_TERRATEC_XS:
 	case EM2880_BOARD_TERRATEC_HYBRID_XS:
 	case EM2880_BOARD_TERRATEC_HYBRID_XS_FR:
 	case EM2881_BOARD_PINNACLE_HYBRID_PRO:

[Index of Archives]     [Linux Input]     [Video for Linux]     [Gstreamer Embedded]     [Mplayer Users]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux