dvb-t device Terratec Cinergy T XS not working

Bug #460636 reported by Thorsten Hirsch
26
This bug affects 2 people
Affects Status Importance Assigned to Milestone
linux (Ubuntu)
Won't Fix
Medium
Unassigned
linux-firmware-nonfree (Ubuntu)
Won't Fix
Undecided
Unassigned

Bug Description

Though the driver is included in the kernel, the correct firmware file is missing. I've got a firmware file with the same name from an older version of the driver, but it gets rejected.

dmesg output:

[ 11.195279] Linux video capture interface: v2.00
[ 11.254380] em28xx: New device TerraTec Electronic GmbH Cinergy T USB XS @ 480 Mbps (0ccd:0043, interface 0, class 0)
[ 11.254418] em28xx #0: chip ID is em2870
[ 11.348021] parport_pc 00:08: reported by Plug and Play ACPI
[ 11.348121] parport0: PC-style at 0x378 (0x778), irq 7, dma 3 [PCSPP,TRISTATE,COMPAT,EPP,ECP,DMA]
[ 11.398156] em28xx #0: i2c eeprom 00: 1a eb 67 95 cd 0c 43 00 c0 12 81 00 6a 24 8e 34
[ 11.398169] em28xx #0: i2c eeprom 10: 00 00 06 57 02 0c 00 00 00 00 00 00 00 00 00 00
[ 11.398180] em28xx #0: i2c eeprom 20: 44 00 00 00 f0 10 01 00 00 00 00 00 5b 00 00 00
[ 11.398191] em28xx #0: i2c eeprom 30: 00 00 20 40 20 80 02 20 01 01 00 00 26 3c e3 49
[ 11.398202] em28xx #0: i2c eeprom 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
[ 11.398213] em28xx #0: i2c eeprom 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
[ 11.398226] em28xx #0: i2c eeprom 60: 00 00 00 00 00 00 00 00 00 00 24 03 43 00 69 00
[ 11.398233] em28xx #0: i2c eeprom 70: 6e 00 65 00 72 00 67 00 79 00 20 00 54 00 20 00
[ 11.398240] em28xx #0: i2c eeprom 80: 55 00 53 00 42 00 20 00 58 00 53 00 00 00 34 03
[ 11.398247] em28xx #0: i2c eeprom 90: 54 00 65 00 72 00 72 00 61 00 54 00 65 00 63 00
[ 11.398254] em28xx #0: i2c eeprom a0: 20 00 45 00 6c 00 65 00 63 00 74 00 72 00 6f 00
[ 11.398261] em28xx #0: i2c eeprom b0: 6e 00 69 00 63 00 20 00 47 00 6d 00 62 00 48 00
[ 11.398268] em28xx #0: i2c eeprom c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
[ 11.398275] em28xx #0: i2c eeprom d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
[ 11.398281] em28xx #0: i2c eeprom e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
[ 11.398288] em28xx #0: i2c eeprom f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
[ 11.398296] em28xx #0: EEPROM ID= 0x9567eb1a, EEPROM hash = 0x5a1fc1df
[ 11.398297] em28xx #0: EEPROM info:
[ 11.398298] em28xx #0: No audio on board.
[ 11.398300] em28xx #0: 500mA max power
[ 11.398301] em28xx #0: Table at 0x06, strings=0x246a, 0x348e, 0x0000
[ 11.399031] em28xx #0: Identified as Terratec Cinergy T XS (card=43)
[ 11.399034] em28xx #0:
[ 11.399035]
[ 11.399038] em28xx #0: The support for this board weren't valid yet.
[ 11.399040] em28xx #0: Please send a report of having this working
[ 11.399042] em28xx #0: not to V4L mailing list (and/or to other addresses)
[ 11.399043]
[ 11.413394] C-Media PCI 0000:05:00.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16
[ 11.579559] lp0: using parport0 (interrupt-driven).
[ 11.589392] ppdev: user-space parallel port driver
[ 11.738758] Chip ID is not zero. It is not a TEA5767
[ 11.738839] tuner 0-0060: chip found @ 0xc0 (em28xx #0)
[ 11.976324] xc2028 0-0060: creating new instance
[ 11.976327] xc2028 0-0060: type set to XCeive xc2028/xc3028 tuner
[ 11.976334] usb 1-3: firmware: requesting xc3028-v27.fw
[ 12.053331] xc2028 0-0060: Loading 80 firmware images from xc3028-v27.fw, type: xc2028 firmware, ver 2.7
[ 12.120017] xc2028 0-0060: Loading firmware for type=BASE (1), id 0000000000000000.
[ 13.029655] xc2028 0-0060: Loading firmware for type=(0), id 000000000000b700.
[ 13.043277] SCODE (20000000), id 000000000000b700:
[ 13.043283] xc2028 0-0060: Loading SCODE for type=MONO SCODE HAS_IF_4320 (60008000), id 0000000000008000.
[ 13.091774] xc2028 0-0060: Incorrect readback of firmware version.
[ 13.220016] xc2028 0-0060: Loading firmware for type=BASE (1), id 0000000000000000.
[ 14.119697] xc2028 0-0060: Loading firmware for type=(0), id 000000000000b700.
[ 14.133315] SCODE (20000000), id 000000000000b700:
[ 14.133321] xc2028 0-0060: Loading SCODE for type=MONO SCODE HAS_IF_4320 (60008000), id 0000000000008000.
[ 14.173063] xc2028 0-0060: Incorrect readback of firmware version.
[ 14.340013] em28xx #0: v4l2 driver version 0.1.2
[ 14.345134] em28xx #0: V4L2 device registered as /dev/video0 and /dev/vbi0
[ 14.360050] usbcore: registered new interface driver em28xx
[ 14.360055] em28xx driver loaded

$ lsb_release -rd
Description: Ubuntu 9.10
Release: 9.10

$ uname -a
Linux bauerbob 2.6.31-14-generic #48-Ubuntu SMP Fri Oct 16 14:05:01 UTC 2009 x86_64 GNU/Linux

$ md5sum /lib/firmware/xc3028-v27.fw
293dc5e915d9a0f74a368f8a2ce3cc10 /lib/firmware/xc3028-v27.fw

There's also a HowTo for extracting the firmware file from the Windows driver (url: http://lists-archives.org/video4linux/20835-extract-tool-for-xc3028-firmware.html), but it's also being rejected ...at least for a different reason:

[...]
[ 2147.322197] Chip ID is not zero. It is not a TEA5767
[ 2147.322293] tuner 0-0060: chip found @ 0xc0 (em28xx #0)
[ 2147.322385] xc2028 0-0060: creating new instance
[ 2147.322389] xc2028 0-0060: type set to XCeive xc2028/xc3028 tuner
[ 2147.322397] usb 1-3: firmware: requesting xc3028-v27.fw
[ 2147.326215] xc2028 0-0060: Loading 80 firmware images from xc3028-v27.fw, type: xc2028 firmware, ver 2.7
[ 2147.326220] xc2028 0-0060: Firmware type BASE F8MHZ (3), id 0 is corrupted (size=0, expected 8718)
[ 2147.326227] xc2028 0-0060: Error: firmware file is corrupted!
[ 2147.326230] xc2028 0-0060: Releasing partially loaded firmware file.
[ 2147.326239] em28xx #0: v4l2 driver version 0.1.2
[ 2147.332033] em28xx #0: V4L2 device registered as /dev/video0 and /dev/vbi0
[ 2147.351313] usbcore: registered new interface driver em28xx
[ 2147.351317] em28xx driver loaded

$ md5sum "./Cinergy T USB XS/BDA Driver 4.6.1115.0/Windows Vista (64Bit)/xc3028-v27.fw"
2305e1b7b5aad2213cf40505db91a2de ./Cinergy T USB XS/BDA Driver 4.6.1115.0/Windows Vista (64Bit)/xc3028-v27.fw
---
AlsaVersion: Advanced Linux Sound Architecture Driver Version 1.0.21.
Architecture: amd64
Card0.Amixer.info:
 Card hw:0 'Intel'/'HDA Intel at 0xf9ff8000 irq 22'
   Mixer name : 'Realtek ALC888'
   Components : 'HDA:10ec0888,14627519,00100001'
   Controls : 35
   Simple ctrls : 20
Card1.Amixer.info:
 Card hw:1 'CMI8738'/'C-Media CMI8738 (model 55) at 0xe800, irq 16'
   Mixer name : 'CMedia PCI'
   Components : ''
   Controls : 41
   Simple ctrls : 22
Card2.Amixer.info:
 Card hw:2 'U0xeb1a0x2871'/'USB Device 0xeb1a:0x2871 at usb-0000:00:1a.7-5, high speed'
   Mixer name : 'USB Mixer'
   Components : 'USBeb1a:2871'
   Controls : 2
   Simple ctrls : 1
Card2.Amixer.values:
 Simple mixer control 'Line',0
   Capabilities: cvolume cvolume-joined cswitch cswitch-joined penum
   Capture channels: Mono
   Limits: Capture 0 - 16
   Mono: Capture 0 [0%] [0.00dB] [off]
DistroRelease: Ubuntu 10.04
HibernationDevice: RESUME=/dev/sda1
MachineType: MSI MS-7519
Package: linux (not installed)
ProcCmdLine: BOOT_IMAGE=/boot/vmlinuz-2.6.32.11+drm33.2 root=/dev/sda2 ro quiet splash
ProcEnviron:
 PATH=(custom, user)
 LANG=de_DE.UTF-8
 SHELL=/bin/bash
ProcVersionSignature: Ubuntu 2.6.32-21.32-generic 2.6.32.11+drm33.2
Regression: No
RelatedPackageVersions: linux-firmware 1.34
Reproducible: Yes
RfKill:
 0: phy0: Wireless LAN
  Soft blocked: no
  Hard blocked: no
Tags: lucid filesystem needs-upstream-testing
Uname: Linux 2.6.32.11+drm33.2 x86_64
UserAsoundrc:
 # ALSA library configuration file

 # Include settings that are under the control of asoundconf(1).
 # (To disable these settings, comment out this line.)
 </home/torti/.asoundrc.asoundconf>
UserGroups: adm admin audio cdrom dialout disk floppy games lpadmin operator plugdev sambashare scanner src vboxusers video
WpaSupplicantLog:

dmi.bios.date: 01/18/2010
dmi.bios.vendor: American Megatrends Inc.
dmi.bios.version: V1.12
dmi.board.asset.tag: To Be Filled By O.E.M.
dmi.board.name: P45 Neo-F (MS-7519)
dmi.board.vendor: MSI
dmi.board.version: 1.0
dmi.chassis.asset.tag: To Be Filled By O.E.M.
dmi.chassis.type: 3
dmi.chassis.vendor: MICRO-STAR INTERNATIONAL CO.,LTD
dmi.chassis.version: 1.0
dmi.modalias: dmi:bvnAmericanMegatrendsInc.:bvrV1.12:bd01/18/2010:svnMSI:pnMS-7519:pvr1.0:rvnMSI:rnP45Neo-F(MS-7519):rvr1.0:cvnMICRO-STARINTERNATIONALCO.,LTD:ct3:cvr1.0:
dmi.product.name: MS-7519
dmi.product.version: 1.0
dmi.sys.vendor: MSI

Revision history for this message
Brian Murray (brian-murray) wrote :

Thank you for taking the time to report this bug and helping to make Ubuntu better. This bug did not have a package associated with it, which is important for ensuring that it gets looked at by the proper developers. You can learn more about finding the right package at https://wiki.ubuntu.com/Bugs/FindRightPackage. I have classified this bug as a bug in linux.

When reporting bugs in the future please use apport, either via the appropriate application's "Help -> Report a Problem" menu or using 'ubuntu-bug' and the name of the package affected. You can learn more about this functionality at https://wiki.ubuntu.com/ReportingBugs.

affects: ubuntu → linux (Ubuntu)
Revision history for this message
Thorsten Hirsch (t-hirsch) wrote :

Here's a workaround.

I hacked Markus Rechberger's driver (em28xx-new) so that it will build on kernel 2.6.31. This driver is NOT the same as the one that comes with Ubuntu and it overwrites some kernel modules. However, it doesn't need a firmware as the firmware is somehow provided in the driver - don't ask me for details, I really have no clue of all that stuff. And since I couldn't fix some i2c stuff, I had to throw out some drivers for analogue chipsets thus removing support for some hybrid devices. Sorry guys. But there are still ~45 supported devices, e.g. Terratec Cinergy XS (that's mine and it's the only one I could test).

usage:

1. make
2. make install

P.S.: my work is based on another patch - http://www.daniele50.it/listing/slackware64/11/em28xx-new/em28xx-new-2.6.30-patch.diff - so thank you, Daniele!

Revision history for this message
Arnaud LE CAM (arnaudlecam) wrote :

Hi,
Thortsten's driver is working for me :

$ lsusb
Bus 001 Device 002: ID 0ccd:0072 TerraTec Electronic GmbH

$ lsb_release -rd
Description: Ubuntu 9.10
Release: 9.10

$ uname -a
Linux PC-Shoop 2.6.31-14-generic #48-Ubuntu SMP Fri Oct 16 14:04:26 UTC 2009 i686 GNU/Linux

$ dmesg | grep em2
[ 157.874915] em28xx v4l2 driver version 0.0.1 loaded
[ 157.875110] em28xx: new video device (0ccd:0072): interface 0, class 255
[ 157.875117] em28xx: device is attached to a USB 2.0 bus
[ 157.875126] em28xx #0: Alternate settings: 8
[ 157.875132] em28xx #0: Alternate setting 0, max size= 0
[ 157.875137] em28xx #0: Alternate setting 1, max size= 0
[ 157.875142] em28xx #0: Alternate setting 2, max size= 1448
[ 157.875147] em28xx #0: Alternate setting 3, max size= 2048
[ 157.875153] em28xx #0: Alternate setting 4, max size= 2304
[ 157.875158] em28xx #0: Alternate setting 5, max size= 2580
[ 157.875163] em28xx #0: Alternate setting 6, max size= 2892
[ 157.875168] em28xx #0: Alternate setting 7, max size= 3072
[ 158.154621] em28xx #0: found i2c device @ 0x88 [msp34xx/cx25843]
[ 158.159235] em28xx #0: found i2c device @ 0xa0 [eeprom]
[ 158.177620] em28xx #0: Found <NULL>
[ 158.177768] usbcore: registered new interface driver em28xx

Thank you !
Arnaud

Revision history for this message
Florent (flonouvellon) wrote :

Hi,

Thanks for this tip to compile em28xx-new on 2.6.31.
flo /lib/modules $ uname -a
Linux flox 2.6.31-ARCH #1 SMP PREEMPT Tue Nov 10 19:48:17 CET 2009 i686 Intel(R) Pentium(R) M processor 1.86GHz GenuineIntel GNU/Linux

$ lsusb
Bus 001 Device 002: ID 0ccd:0072 TerraTec Electronic GmbH

Indeed, as Arnaud, it compiles and em28xx module loadsbut NOT em28xx-dvb nor -audio. I have the same output for dmesg.

>>> How is it possible to use it without a device addresse (ie /etc/video0) ??

Arnaud you say it works, how do you use your device (VLC, Kaffeine) and with which address ?

Revision history for this message
Thorsten Hirsch (t-hirsch) wrote :

Hi Florent,

your card is one of those hybrid ones:

em28xx-cards.c: { USB_DEVICE(0x0ccd, 0x0072), .driver_info = EM2883_BOARD_TERRATEC_HYBRID_XS_FM },

Sorry, my package doesn't support it anymore.

Revision history for this message
Florent (flonouvellon) wrote :

Alas!!
I would like to do things myself, and think it would be doable if I get a good starting point. I'm not sure about the amount of work this represents... Anyway, would you help a bit?
...i.e. providing diffs for the files you had modified, or links to the documentation you (would have) used, or anything else?

Revision history for this message
Thorsten Hirsch (t-hirsch) wrote : Re: [Bug 460636] Re: dvb-t device Terratec Cinergy T XS not working

Sure.
But actually I've got a problem myself. My hardware's vendor id has
changed. Somehow it's not terratec anymore, but empia:

old:
Bus 001 Device 003: ID 0ccd:0043 TerraTec Electronic GmbH

new:
Bus 001 Device 003: ID eb1a:2871 eMPIA Technology, Inc.

Now the driver doesn't work anymore. I even updated the driver once
again, saying, that eb1a:2871 should just be used in the same way as
0ccd:0043. You can do that in em28xx-cards.c. But it doesn't work. The
tuner-xc3028 module isn't being loaded and though there's a signal in
my tv application (kaffeine) I can't see anything. Seems like the
channels can't be locked anymore. I don't know why. Modprobing xc3028
manually doesn't help.

Now I'm trying to find a pc running windows so that I can try it with
the original driver. I hope the firmware will get updated that way so
that the vendor id will be reset to the original value.

Revision history for this message
Arnaud LE CAM (arnaudlecam) wrote :

Hi Florent,

Sorry, I've made a mistake : em28xx module is loaded (em28xx-dvb and em28xx-audio aren't), but no device was created with v4l :

$ lsmod | grep em2
em28xx 375228 0
videodev 36736 2 uvcvideo,em28xx
v4l1_compat 14496 3 uvcvideo,em28xx,videodev

in wich uvcvideo is loaded for my WebCam. v4l-info gives no information about de Terratec usb key...
I'd like to work on the driver to, but I don't know anything about C programming...

Revision history for this message
Thorsten Hirsch (t-hirsch) wrote :

So the driver isn't working for both of you?
Could you please check if your usb id changed (lsusb)?

Thorsten

Revision history for this message
Arnaud LE CAM (arnaudlecam) wrote :

no, my usb ID didn't : here was my dmesg with Ubuntu 9.04 (kernel 2.6.28-16):

[ 146.603415] em28xx v4l2 driver version 0.0.1 loaded
[ 146.606331] em28xx: new video device (0ccd:0072): interface 0, class 255
[ 146.606342] em28xx: device is attached to a USB 2.0 bus
[ 146.606357] em28xx #0: Alternate settings: 8
[ 146.606363] em28xx #0: Alternate setting 0, max size= 0
[ 146.606367] em28xx #0: Alternate setting 1, max size= 0
[ 146.606371] em28xx #0: Alternate setting 2, max size= 1448
[ 146.606375] em28xx #0: Alternate setting 3, max size= 2048
[ 146.606380] em28xx #0: Alternate setting 4, max size= 2304
[ 146.606384] em28xx #0: Alternate setting 5, max size= 2580
[ 146.606388] em28xx #0: Alternate setting 6, max size= 2892
[ 146.606392] em28xx #0: Alternate setting 7, max size= 3072
[ 147.042387] cx25843.c: starting probe for adapter em28xx #0 (0x1001f)
[ 150.136983] em28xx #0: V4L2 VBI device registered as /dev/vbi0
[ 150.143344] em28xx #0: V4L2 device registered as /dev/video1
[ 150.143728] input: em2880/em2870 remote control as /devices/virtual/input/input9
[ 150.172500] em28xx-input.c: remote control handler attached
[ 150.172511] em28xx #0: Found Terratec Hybrid XS FM (em2883)
[ 150.172598] usbcore: registered new interface driver em28xx
[ 150.211370] em28xx-audio.c: probing for em28x1 non standard usbaudio
[ 150.211380] em28xx-audio.c: Copyright (C) 2006 Markus Rechberger
[ 150.275364] em2880-dvb.c: DVB Init
[ 150.651140] DVB: registering new adapter (em2880 DVB-T)

and with Ubuntu 8.10 (kernel 2.6.27-16) :

[ 148.104502] em28xx v4l2 driver version 0.0.1 loaded
[ 148.116160] em28xx: new video device (0ccd:0072): interface 0, class 255
[ 148.116172] em28xx: device is attached to a USB 2.0 bus
[ 148.116186] em28xx #0: Alternate settings: 8
[ 148.116192] em28xx #0: Alternate setting 0, max size= 0
[ 148.116196] em28xx #0: Alternate setting 1, max size= 0
[ 148.116201] em28xx #0: Alternate setting 2, max size= 1448
[ 148.116206] em28xx #0: Alternate setting 3, max size= 2048
[ 148.116211] em28xx #0: Alternate setting 4, max size= 2304
[ 148.116216] em28xx #0: Alternate setting 5, max size= 2580
[ 148.116221] em28xx #0: Alternate setting 6, max size= 2892
[ 148.116225] em28xx #0: Alternate setting 7, max size= 3072
[ 149.690563] cx25843.c: starting probe for adapter em28xx #0 (0x1001f)
[ 152.851626] em28xx #0: V4L2 VBI device registered as /dev/vbi0
[ 152.858694] em28xx #0: V4L2 device registered as /dev/video0
[ 152.858965] input: em2880/em2870 remote control as /devices/virtual/input/input8
[ 152.888603] em28xx-input.c: remote control handler attached
[ 152.888615] em28xx #0: Found Terratec Hybrid XS FM (em2883)
[ 152.904734] usbcore: registered new interface driver em28xx
[ 152.936201] em28xx-audio.c: probing for em28x1 non standard usbaudio
[ 152.936212] em28xx-audio.c: Copyright (C) 2006 Markus Rechberger
[ 153.029159] em2880-dvb.c: DVB Init
[ 153.389980] DVB: registering new adapter (em2880 DVB-T)

with Ubuntu 9.10, it seems that the kernel is founding somethink he doesn't know :
[ 158.177620] em28xx #0: Found <NULL>
and nothing is happening with cx25843.c ...

Revision history for this message
f3a97 (f3a97) wrote :

Hello Thorsten,

I too have this USB card and compiled your driver to get it working...

This is my dmesg:

[ 6133.875088] em28xx v4l2 driver version 0.0.1 loaded
[ 6133.875618] em28xx: new video device (0ccd:0072): interface 0, class 255
[ 6133.875624] em28xx: device is attached to a USB 2.0 bus
[ 6133.875631] em28xx #0: Alternate settings: 8
[ 6133.875636] em28xx #0: Alternate setting 0, max size= 0
[ 6133.875641] em28xx #0: Alternate setting 1, max size= 0
[ 6133.875646] em28xx #0: Alternate setting 2, max size= 1448
[ 6133.875651] em28xx #0: Alternate setting 3, max size= 2048
[ 6133.875657] em28xx #0: Alternate setting 4, max size= 2304
[ 6133.875662] em28xx #0: Alternate setting 5, max size= 2580
[ 6133.875667] em28xx #0: Alternate setting 6, max size= 2892
[ 6133.875671] em28xx #0: Alternate setting 7, max size= 3072
[ 6134.138361] em28xx #0: found i2c device @ 0x88 [msp34xx/cx25843]
[ 6134.143100] em28xx #0: found i2c device @ 0xa0 [eeprom]
[ 6134.160981] em28xx #0: Found <NULL>
[ 6134.161070] usbcore: registered new interface driver em28xx

lsusb:

Bus 002 Device 006: ID 0ccd:0072 TerraTec Electronic GmbH

No device has been registered though :(

No other module is loaded. May I ask you how did you manage to sort this out?

Thanks for your effort!

Revision history for this message
lennyhome (lenny-mondogrigio) wrote :

Here's how I got my Cinergy T USB XS stick to work in detail. I hope it helps.

1. Download Thorsten's driver linked on post #2 unpack and enter em28xx-new
2. Do "./build.sh build"
3. As root do "pico /etc/modprobe.d/blacklist-cinergy.conf"
4. Copy and paste the following lines inside pico:

blacklist zl10353
blacklist mt2060
blacklist em28xx
blacklist em28xx-dvb
blacklist em28xx-audio

5. Save and close pico
6. Insert the stick if you haven't already and reboot
7. Open a terminal and enter em28xx-new/modules
8. Execute the following command one by one in order:

insmod zl10353.ko
insmod mt2060.ko
insmod em28xx.ko
insmod em28xx-dvb.ko
insmod em28xx-audio.ko

9. Do "ls /dev/dvb". If the folder exists and you have no other DVB adapter connected to you PC, then you're in business.

If it works for you, then you can think of a way to make things permanent, but this procedure lets you test the driver without messing with the system.

If it doesn't work, then do rm /etc/modprobe.d/blacklist-cinergy.conf, reboot without the stick inserted and write an angry email to Terratec.

Revision history for this message
Thorsten Hirsch (t-hirsch) wrote :

Hi guys,

you might want to use Daniele's script for manually loading the
modules in the correct order:

http://www.daniele50.it/listing/slackware64/11/em28xx-new/rc.em28xx-new

Unfortunately my stick still doesn't lock when it scans for channels
and finds one. I have no idea how to solve that.

Thorsten

Revision history for this message
Jeremy Foshee (jeremyfoshee) wrote :

Hi Thorsten,

This bug was reported a while ago and there hasn't been any activity in it recently. We were wondering if this is still an issue? Can you try with the latest development release of Ubuntu? ISO CD images are available from http://cdimage.ubuntu.com/releases/ .

If it remains an issue, could you run the following command from a Terminal (Applications->Accessories->Terminal). It will automatically gather and attach updated debug information to this report.

apport-collect -p linux 460636

Also, if you could test the latest upstream kernel available that would be great. It will allow additional upstream developers to examine the issue. Refer to https://wiki.ubuntu.com/KernelMainlineBuilds . Once you've tested the upstream kernel, please remove the 'needs-upstream-testing' tag. This can be done by clicking on the yellow pencil icon next to the tag located at the bottom of the bug description and deleting the 'needs-upstream-testing' text. Please let us know your results.

Thanks in advance.

    [This is an automated message. Apologies if it has reached you inappropriately; please just reply to this message indicating so.]

tags: added: needs-kernel-logs
tags: added: needs-upstream-testing
tags: added: kj-triage
Changed in linux (Ubuntu):
status: New → Incomplete
Revision history for this message
Thorsten Hirsch (t-hirsch) wrote :

Hi Jeremy,

I'll tell you next week after upgrading to 10.04. :-)

Thorsten

Revision history for this message
Jeremy Foshee (jeremyfoshee) wrote :

Sounds good to me. :-)

Thanks for the update Thorsten.

~JFo

Revision history for this message
Thorsten Hirsch (t-hirsch) wrote : AlsaDevices.txt

apport information

tags: added: apport-collected
description: updated
Revision history for this message
Thorsten Hirsch (t-hirsch) wrote : AplayDevices.txt

apport information

Revision history for this message
Thorsten Hirsch (t-hirsch) wrote : ArecordDevices.txt

apport information

Revision history for this message
Thorsten Hirsch (t-hirsch) wrote : AudioDevicesInUse.txt

apport information

Revision history for this message
Thorsten Hirsch (t-hirsch) wrote : BootDmesg.txt

apport information

Revision history for this message
Thorsten Hirsch (t-hirsch) wrote : CRDA.txt

apport information

Revision history for this message
Thorsten Hirsch (t-hirsch) wrote : Card0.Amixer.values.txt

apport information

Revision history for this message
Thorsten Hirsch (t-hirsch) wrote : Card0.Codecs.codec.0.txt

apport information

Revision history for this message
Thorsten Hirsch (t-hirsch) wrote : Card1.Amixer.values.txt

apport information

Revision history for this message
Thorsten Hirsch (t-hirsch) wrote : CurrentDmesg.txt

apport information

Revision history for this message
Thorsten Hirsch (t-hirsch) wrote : IwConfig.txt

apport information

Revision history for this message
Thorsten Hirsch (t-hirsch) wrote : Lspci.txt

apport information

Revision history for this message
Thorsten Hirsch (t-hirsch) wrote : Lsusb.txt

apport information

Revision history for this message
Thorsten Hirsch (t-hirsch) wrote : PciMultimedia.txt

apport information

Revision history for this message
Thorsten Hirsch (t-hirsch) wrote : ProcCpuinfo.txt

apport information

Revision history for this message
Thorsten Hirsch (t-hirsch) wrote : ProcInterrupts.txt

apport information

Revision history for this message
Thorsten Hirsch (t-hirsch) wrote : ProcModules.txt

apport information

Revision history for this message
Thorsten Hirsch (t-hirsch) wrote : UdevDb.txt

apport information

Revision history for this message
Thorsten Hirsch (t-hirsch) wrote : UdevLog.txt

apport information

Revision history for this message
Thorsten Hirsch (t-hirsch) wrote : UserAsoundrcAsoundconf.txt

apport information

Revision history for this message
Thorsten Hirsch (t-hirsch) wrote : WifiSyslog.txt

apport information

Revision history for this message
Thorsten Hirsch (t-hirsch) wrote :

Well, I couldn't wait and installed 10.04 RC yesterday.
In short: the problem still exists.
The em28xx drivers seem to work fine, but the xc2028 driver (which is also the driver for the xc3028 chip on the terratec xs) doesn't work with the firmware provided in linux-firmware-nonfree:

$ dmesg | grep xc20
[ 11.418165] xc2028 0-0060: creating new instance
[ 11.418168] xc2028 0-0060: type set to XCeive xc2028/xc3028 tuner
[ 11.509468] xc2028 0-0060: Loading 80 firmware images from xc3028-v27.fw, type: xc2028 firmware, ver 2.7
[ 11.560031] xc2028 0-0060: Loading firmware for type=BASE (1), id 0000000000000000.
[ 12.479643] xc2028 0-0060: Loading firmware for type=(0), id 000000000000b700.
[ 12.493270] xc2028 0-0060: Loading SCODE for type=MONO SCODE HAS_IF_4320 (60008000), id 0000000000008000.
[ 12.531759] xc2028 0-0060: Incorrect readback of firmware version.
[ 12.650030] xc2028 0-0060: Loading firmware for type=BASE (1), id 0000000000000000.
[ 13.579893] xc2028 0-0060: Loading firmware for type=(0), id 000000000000b700.
[ 13.593520] xc2028 0-0060: Loading SCODE for type=MONO SCODE HAS_IF_4320 (60008000), id 0000000000008000.
[ 13.631766] xc2028 0-0060: Incorrect readback of firmware version.

$ dpkg -S /lib/firmware/xc3028-v27.fw
linux-firmware-nonfree: /lib/firmware/xc3028-v27.fw

The long story is: my device still has a wrong usb id (eb1a:2871). So it is not being loaded at boot time, because no driver is responsible for this usb id. So I installed linux-source, added eb1a:2871 to the identifiers of the terratec xs (/usr/src/linux-source-2.6.32/drivers/media/video/em28xx/em28xx-cards.c) and compiled my own kernel with ubuntu's config (/boot/config-2.6.32-21-generic). It worked fine, the driver was loaded on boot time.

Revision history for this message
Thorsten Hirsch (t-hirsch) wrote :

One more thing - I've found these git log entries in Linus' kernel:

====*snip*====

commit 2e3c4723d5c2d6b4fa705c3dcd062b5004ab9b2f
Author: Devin Heitmueller <email address hidden>
Date: Wed Sep 30 23:10:17 2009 -0300

    V4L/DVB (13082): em28xx: remove "not validated" status from Terratec Cinergy T XS (005e)

    The board support has been validated by the user, so get rid of the warning
    that shows up on board load.

    Signed-off-by: Devin Heitmueller <email address hidden>
    Signed-off-by: Mauro Carvalho Chehab <email address hidden>

commit ec994d0505fc3dde5f46203602c76b527e2ac69d
Author: Uroš Vampl <email address hidden>
Date: Wed Sep 30 22:53:37 2009 -0300

    V4L/DVB (13078): em28xx: fix support for Terratec Cinergy T XS (005e)

    Make analog audio, dvb and the remote work on a Terratec Cinergy Hybrid
    XS (em2882).

    Note by djh: Thanks go out fo Andrej Suligoi for his contribution in providing
    and testing pretty much the exact same patch as provided by Uros. Between
    the two of them, they got all the core functionality working for the device.

    Cc: Andrej Suligoi <email address hidden>
    Signed-off-by: Uroš Vampl <email address hidden>
    Signed-off-by: Devin Heitmueller <email address hidden>
    Signed-off-by: Mauro Carvalho Chehab <email address hidden>

====*snip*====

Maybe you can backport the fixes into Ubuntu's 2.6.32 kernel...?

Changed in linux (Ubuntu):
importance: Undecided → Medium
status: Incomplete → Confirmed
seblem (seblem77)
Changed in linux (Ubuntu):
status: Confirmed → Incomplete
status: Incomplete → Confirmed
Revision history for this message
Peter Curtis (pdcurtis) wrote :

Re Thorsten's id problem. I have a similar problem of a change in a USB id to eb1a:2871 In my case the device was working perfectly with the em28xx-new driver for a couple of days with kaffeine and me-tv. The change was from id eb1a:2870 which was a Pinnacle PCTV DVB-T USB Stick which no longer works under Windows or Ubuntu 10.04. As far as I can tell there is no requirement or mechanism for loading firmware on this device in normal use.

It is possible the change occurred when the machine was suspended with the stick inserted and using the em28xx-new driver.

It seems possible that the em28xx-new driver is loading incorrect firmware or changing the id to eb1a:2871 on several sorts of USB dvd stick under some circumstances.

Revision history for this message
Thorsten Hirsch (t-hirsch) wrote :
Download full text (5.1 KiB)

The em28xx driver in Linus' kernel (2.6.34) still refuses to work with the Terratec Cinergy T XS on Ubuntu, because of a wrong firmware file in the package linux-firmware-nonfree or because of a bug in the (kernel) driver. Would some kernel hacker please have a look at this issue?

Here are some more details. My card still has the wrong usb id (eb1a:2871), so I have to apply a patch that will make the kernel handle my wrong usb id in the same way as the correct one of the Cinergy T XS. attachment => em28xx_with_id_eb1a_2871_for_2.6.34.patch

As you can see I also removed some lines concerning the IR interface. These lines were causing the system to hang completely. I don't know why, but since my dvb-t device has no IR interface I don't need these lines.
Now this is what happens when I insert the dvb-t device:

### dmesg output ###

[ 1144.730280] usb 2-2: new high speed USB device using ehci_hcd and address 3
[ 1145.118529] em28xx: New device @ 480 Mbps (eb1a:2871, interface 0, class 0)
[ 1145.118866] em28xx #0: chip ID is em2870
[ 1145.262373] em28xx #0: i2c eeprom 00: ff ff ff ff ff ff ff ff c0 12 81 00 6a 24 8e 34
[ 1145.262399] em28xx #0: i2c eeprom 10: 00 00 06 57 02 0c 00 00 00 00 00 00 00 00 00 00
[ 1145.262420] em28xx #0: i2c eeprom 20: 44 00 00 00 f0 10 01 00 00 00 00 00 5b 00 00 00
[ 1145.262442] em28xx #0: i2c eeprom 30: 00 00 20 40 20 80 02 20 01 01 00 00 26 3c e3 49
[ 1145.262463] em28xx #0: i2c eeprom 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
[ 1145.262484] em28xx #0: i2c eeprom 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
[ 1145.262528] em28xx #0: i2c eeprom 60: 00 00 00 00 00 00 00 00 00 00 24 03 43 00 69 00
[ 1145.262568] em28xx #0: i2c eeprom 70: 6e 00 65 00 72 00 67 00 79 00 20 00 54 00 20 00
[ 1145.262608] em28xx #0: i2c eeprom 80: 55 00 53 00 42 00 20 00 58 00 53 00 00 00 34 03
[ 1145.262648] em28xx #0: i2c eeprom 90: 54 00 65 00 72 00 72 00 61 00 54 00 65 00 63 00
[ 1145.262687] em28xx #0: i2c eeprom a0: 20 00 45 00 6c 00 65 00 63 00 74 00 72 00 6f 00
[ 1145.262727] em28xx #0: i2c eeprom b0: 6e 00 69 00 63 00 20 00 47 00 6d 00 62 00 48 00
[ 1145.262766] em28xx #0: i2c eeprom c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
[ 1145.262805] em28xx #0: i2c eeprom d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
[ 1145.262845] em28xx #0: i2c eeprom e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
[ 1145.262884] em28xx #0: i2c eeprom f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
[ 1145.262925] em28xx #0: EEPROM ID= 0xffffffff, EEPROM hash = 0x00000000
[ 1145.262930] em28xx #0: EEPROM info:
[ 1145.262935] em28xx #0: No audio on board.
[ 1145.262939] em28xx #0: 500mA max power
[ 1145.262945] em28xx #0: Table at 0x06, strings=0x246a, 0x348e, 0x0000
[ 1145.264611] em28xx #0: Identified as Terratec Cinergy T XS (card=43)
[ 1145.264616] em28xx #0:
[ 1145.264618]
[ 1145.264623] em28xx #0: The support for this board weren't valid yet.
[ 1145.264628] em28xx #0: Please send a report of having this working
[ 1145.264632] em28xx #0: not to V4L mailing list (and/or to other addresses)
[ 1145.264634]
[ 1145.342240] Chip ID is not zero. It is not a TEA5767
[ 1145.342417] tuner 5-0060: chip...

Read more...

Changed in linux-firmware-nonfree (Ubuntu):
status: New → Triaged
Revision history for this message
Chase Douglas (chasedouglas) wrote :

Thorsten,

Generally we don't handle fixing firmware bugs here. We mostly integrate fixes found elsewhere into the Ubuntu packages. You can find more support through upstream at:

http://www.linuxtv.org/lists.php

If you do find a fix, please let us know in this bug so we can get things working for others as well.

Thanks!

Changed in linux (Ubuntu):
status: Confirmed → Triaged
Revision history for this message
Thorsten Hirsch (t-hirsch) wrote : Re: [Bug 460636] Re: dvb-t device Terratec Cinergy T XS not working

Hi Chase,

well, I subscribed to the linux-media mailing list already and told
them about this issue. But when I explained my plans to build a new
firmware file, they told me that I was totally on the wrong track. The
firmware should be fine. And other em28xx/xc3028 cards work.

Since my device also suffers under an eeprom data loss, I think I have
no chance to help solving this issue until someone gives me a dump of
his cinergy usb xs eeprom.

Here's the most interesting post:
http://www.spinics.net/lists/linux-media/msg20437.html
Unfortunately it was also the last one concerning my issue.

Thorsten

Revision history for this message
Chase Douglas (chasedouglas) wrote :

Thorsten,

In that case, I'm going to mark this bug as Won't Fix. If you do find a fix, feel free to reopen this bug or open a new one.

Thanks!

Changed in linux-firmware-nonfree (Ubuntu):
status: Triaged → Won't Fix
Changed in linux (Ubuntu):
status: Triaged → Won't Fix
Revision history for this message
Alberto Mardegan (mardy) wrote :

I have the same card, and I could dump the eeprom if someone gives me instructions on how to do that. Maybe you can recover your cards.

Anyway, the card still doesn't work in 14.04 or 15.10; I opened a new bug about it: bug #1507976.

To post a comment you must log in.