TerraTec Cinergy C DVB-C

From LinuxTVWiki
Revision as of 13:18, 16 February 2010 by Sg (Talk | contribs)

Jump to: navigation, search
Cinergy C DVB-C by Terratec

A DVB-C PCI card from TerraTec.

Overview/Features

Looks to be a clone of the Azurewave/Twinhan AD-CP400 (VP-2040) [1]

Components Used

  • NXP/Philips CU1216 module
  • NXP/Philips TDA10023 (demodulator)
  • Mantis (bridge)

Other Images

Identification

$ lspci -v -s 01:01.0
01:01.0 Multimedia controller: Twinhan Technology Co. Ltd Mantis DTV PCI Bridge Controller [Ver 1.0] (rev 01)
       Subsystem: TERRATEC Electronic GmbH Unknown device 1178
       Flags: bus master, medium devsel, latency 64, IRQ 22
       Memory at cfdff000 (32-bit, prefetchable) [size=4K]
$ lspci -vvn -s 01:01.0
01:01.0 0480: 1822:4e35 (rev 01)
        Subsystem: 153b:1178
        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: 64 (2000ns min, 63750ns max)
        Interrupt: pin A routed to IRQ 22
        Region 0: Memory at cfdff000 (32-bit, prefetchable) [size=4K]

Making it Work

The card is working under Linux using the Mantis driver. Kernel 2.6.28 released on 24.12.2008 works with the mantis driver in the s2-liplianin repository.

The mantis-multiproto driver has been tested with Ubuntu Hardy (2.6.24?) on the 28.11.2008. CAM/CI is not working with current mantis for me. I have a crash when scanning or zapping with the CAM inserted. Take the CAM module out if you have one for the moment! (Is this also true for the new driver??)

Firmware

No firmware required.

Drivers

Current S2API Driver

This is the recommended driver. Install the latest mantis drivers like this.

sudo apt-get install mercurial linux-headers-$(uname -r) build-essential
hg clone http://mercurial.intuxication.org/hg/s2-liplianin
cd s2-liplianin
make
sudo make install
sudo reboot

If you have a distribution which uses DKMS (like Ubuntu), Mantis with DKMS is a convenient way to install the driver and keep it running for new kernel releases.

There have been some problems with the s2-liplianin repository (only works for 30 minutes) and a fix that has worked for someone is to use http://jusst.de/hg/v4l-dvb instead of http://mercurial.intuxication.org/hg/s2-liplianin You should/could also use the sudo make menuconfig and remove all the unnecessary modules.

Old Multiproto Driver

Old mantis-multiproto repository instructions. May not compile with latest kernels.

cd /usr/src
sudo apt-get install mercurial
sudo hg clone http://jusst.de/hg/mantis  
cd mantis
sudo make
sudo make install
sudo reboot

Sample kernel output

Output from s2-liplianin driver under Kernel 2.6.28-15

[   10.158595] Mantis 0000:04:09.0: PCI INT A -> Link[LNKB] -> GSI 17 (level, low) -> IRQ 17
[   10.158700] irq: 17, latency: 64
[   10.158701]  memory: 0xdfeff000, mmio: 0xffffc20000054000
[   10.158706] found a VP-2040 PCI DVB-C device on (04:09.0),
[   10.158708]     Mantis Rev 1 [153b:1178], irq: 17, latency: 64
[   10.158710]     memory: 0xdfeff000, mmio: 0xffffc20000054000
[   10.161444]     MAC Address=[00:08:ca:1d:b7:60]
[   10.161482] mantis_alloc_buffers (0): DMA=0x3d5f0000 cpu=0xffff88003d5f0000 size=65536
[   10.161488] mantis_alloc_buffers (0): RISC=0x3d129000 cpu=0xffff88003d129000 size=1000
[   10.161491] DVB: registering new adapter (Mantis dvb adapter)
[   10.681124] mantis_frontend_init (0): Probing for CU1216 (DVB-C)
[   10.684607] TDA10023: i2c-addr = 0x0c, id = 0x7d
[   10.684609] mantis_frontend_init (0): found Philips CU1216 DVB-C frontend (TDA10023) @ 0x0c
[   10.684612] mantis_frontend_init (0): Mantis DVB-C Philips CU1216 frontend attach success
[   10.684616] DVB: registering adapter 0 frontend 0 (Philips TDA10023 DVB-C)...
[   10.684684] mantis_ca_init (0): Registering EN50221 device
[   10.684961] mantis_ca_init (0): Registered EN50221 device
[   10.684971] mantis_hif_init (0): Adapter(0) Initializing Mantis Host Interface
[   10.685048] input: Mantis VP-2040 IR Receiver as /devices/virtual/input/input5
[   10.815684] Mantis VP-2040 IR Receiver: unknown key: key=0x00 raw=0x00 down=1


With latest build from http://jusst.de/hg/mantis:

[   47.563542] found a VP-2040 PCI DVB-C device on (01:01.0),
[   47.563543]     Mantis Rev 1 [153b:1178], irq: 22, latency: 64
[   47.563545]     memory: 0xcfdff000, mmio: 0xf89de000
[   47.566227]     MAC Address=[00:08:ca:1c:73:1d]
[   47.566254] mantis_alloc_buffers (0): DMA=0x37850000 cpu=0xf7850000 size=65536
[   47.566292] mantis_alloc_buffers (0): RISC=0x37913000 cpu=0xf7913000 size=1000
[   47.566332] DVB: registering new adapter (Mantis dvb adapter)
[   48.086203] mantis_frontend_init (0): Probing for CU1216 (DVB-C)
[   48.088334] mantis_frontend_init (0): found Philips CU1216 DVB-C frontend 0x0c
[   48.088378] mantis_frontend_init (0): Mantis DVB-C Philips CU1216 frontend attach success
[   48.088424] DVB: registering frontend 0 (Philips TDA10023 DVB-C)...
[   54.367799] mantis_ack_wait (0): Slave RACK Fail !

Remote Control Support

For the old driver (Manu's) RC works after applying the following patch. See [2]

NOTE: I wonder why this patch has not been merged into the trunk. Does it break anything?

In the new driver the remote works now without a patch.

CI support

CI/CAM support for the optional CI module is not working yet (19.12.2014)

Known Issues

Working around i2c bus probing interference with ivtv

If the mantis module won't load (hangs) with the error message

mantis_ack_wait (0): Slave RACK Fail !

you should check [[3]]

External Links