Difference between revisions of "TerraTec Cinergy C DVB-C"

From LinuxTVWiki
Jump to: navigation, search
(version warning)
m (Reverted edits by Chjchj (Talk) to last version by Rho)
 
(37 intermediate revisions by 17 users not shown)
Line 1: Line 1:
[[Image:filename|thumb|right|250px|caption]]
+
[[Image:Cinergy-c.jpg|thumb|right|250px|Cinergy C DVB-C by Terratec]]
 
+
{{ArticleNeedsExpanding}}
+
 
   
 
   
 
A [[DVB-C]] [[DVB-C PCI Cards|PCI card]] from [[TerraTec]].
 
A [[DVB-C]] [[DVB-C PCI Cards|PCI card]] from [[TerraTec]].
 
''Drivers: work in progress; see below''
 
  
 
==Overview/Features==
 
==Overview/Features==
''Discuss the features and facets of the device here ... this means you''
 
  
Looks to be a clone of the Azurewave/Twinhan AD-CP400 (VP-2040) [http://www.twinhan.com/product_AD-CP400-2.asp]
+
Looks to be a clone of the Azurewave/Twinhan AD-CP400 (VP-2040) [http://www.twinhan.com/product_AD-CP400.asp]
  
 
===Components Used===
 
===Components Used===
''list the hardware ICs and modules used by the device here ... this means you''
 
  
 
* NXP/Philips CU1216 module
 
* NXP/Philips CU1216 module
** NXP/Philips TDA10023 (demodulator)
+
* NXP/Philips TDA10023 (demodulator)
 
* Mantis (bridge)
 
* Mantis (bridge)
 +
 +
===Other Images===
 +
<gallery perrow=5>
 +
Image:Cinergy-c.jpg|The card
 +
</gallery>
  
 
===Identification===
 
===Identification===
Line 36: Line 35:
 
         Region 0: Memory at cfdff000 (32-bit, prefetchable) [size=4K]
 
         Region 0: Memory at cfdff000 (32-bit, prefetchable) [size=4K]
  
 +
==Making it Work==
 +
The card is working under Linux using the Mantis driver.
 +
Kernel support is available since Kernel version 2.6.33. For kernel versions prior to 2.6.33, see the corresponding sections under Drivers below.
  
 +
===Firmware===
 +
No firmware required.
  
===Other Images===
+
===Drivers===
''use the included code to insert other images if necessary ...  
+
====Kernel Driver====
 +
The Mantis Driver is part of the vanilla linux kernel[http://git390.marist.edu/cgi-bin/gitweb.cgi?p=linux-2.6.git;a=commit;h=2faae42233778676607a2a45b95aeb375bebe2c6] since 2.6.33.
  
<gallery perrow=5>
+
====S2API Driver for Kernel Versions < 2.6.33 ====
Image:filename|description
+
Install the latest mantis drivers:
Image:filename|description
+
...
+
</gallery>
+
  
==Making it Work==
+
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
  
===Firmware===
+
If you have a distribution which uses [http://linux.dell.com/projects.shtml#dkms DKMS] (like Ubuntu), [[Mantis with DKMS]] is a convenient way to install the driver and keep it running for new kernel releases.
''is there any firmware specific information for this device? if so, list it here ... this means you''
+
  
===Drivers===
+
You should/could also use the sudo make menuconfig and remove all the unnecessary modules.
''provide the details of where the drivers and patches and necessary tools are available ... this means you''
+
  
Works with latest drivers from [http://jusst.de/hg/mantis] (23 Feb 2008). Apart from which tree to check out and use, follow [[How to install DVB device drivers|the normal build/install procedure]].
+
====Old Multiproto Driver====
 +
Old mantis-multiproto (obsolete API) repository instructions. Won't compile with latest kernels, if in doubt, try the vanilla kernel module or the S2API instructions above.
  
'''Warning: As of 2008-04-28 there is a bug in the current driver, which freezes w_scan/dvbscan. http://jusst.de/hg/mantis/archive/af18967ffcc9.tar.bz2 is confirmed to work fine'''
+
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===
 
===Sample kernel output===
''provide the relevant portion of dmesg here''
+
Output from [http://mercurial.intuxication.org/hg/s2-liplianin 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]:
+
 
 +
With latest build from [http://jusst.de/hg/mantis http://jusst.de/hg/mantis]:
 
  [  47.563542] found a VP-2040 PCI DVB-C device on (01:01.0),
 
  [  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.563543]    Mantis Rev 1 [153b:1178], irq: 22, latency: 64
Line 77: Line 110:
  
 
===Remote Control Support===
 
===Remote Control Support===
''discuss support for the remote control here''
+
Supported under the vanilla kernel module.
 +
 
 +
Works for the old mantis multiproto driver after applying the following patch. See [http://pauli.borodulin.fi/blog/?p=8]
 +
 
 +
===CI support===
 +
CI/CAM support for the optional CI module is not working yet ({{CURRENTDAY}}.{{CURRENTMONTH}}.{{CURRENTYEAR}})
 +
 
 +
==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  [[http://www.linuxtv.org/pipermail/linux-dvb/2007-August/020087.html]]
 +
 
 +
----
 +
 
 +
<pre>
 +
TDA10023(0): tda10023_writereg, writereg error (reg == 0x08, val == 0x23, ret == -121)
 +
</pre>
 +
 
 +
----
 +
 
 +
femon output is not correct (statistics aren't implemented correctly in the driver)
 +
<pre>
 +
FE: Philips TDA10023 DVB-C (DVBC)
 +
status SCVYL | signal ffff | snr ffff | ber 000f9f9f | unc 9f9f9f9f | FE_HAS_LOCK
 +
status SCVYL | signal ffff | snr ffff | ber 000f9f9f | unc 9f9f9f9f | FE_HAS_LOCK
 +
</pre>
  
 
==External Links==
 
==External Links==
 
* [http://tven.terratec.net/modules.php?op=modload&name=News&file=article&sid=267 Terratec product page]
 
* [http://tven.terratec.net/modules.php?op=modload&name=News&file=article&sid=267 Terratec product page]
  
[[Category:Hardware]]
+
[[Category:DVB-C PCI Cards]]
[[Category:PCI]]
+
[[Category:DVB-C]]
+

Latest revision as of 08:11, 28 April 2011

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 support is available since Kernel version 2.6.33. For kernel versions prior to 2.6.33, see the corresponding sections under Drivers below.

Firmware

No firmware required.

Drivers

Kernel Driver

The Mantis Driver is part of the vanilla linux kernel[2] since 2.6.33.

S2API Driver for Kernel Versions < 2.6.33

Install the latest mantis drivers:

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.

You should/could also use the sudo make menuconfig and remove all the unnecessary modules.

Old Multiproto Driver

Old mantis-multiproto (obsolete API) repository instructions. Won't compile with latest kernels, if in doubt, try the vanilla kernel module or the S2API instructions above.

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

Supported under the vanilla kernel module.

Works for the old mantis multiproto driver after applying the following patch. See [3]

CI support

CI/CAM support for the optional CI module is not working yet (2.10.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 [[4]]


TDA10023(0): tda10023_writereg, writereg error (reg == 0x08, val == 0x23, ret == -121)

femon output is not correct (statistics aren't implemented correctly in the driver)

FE: Philips TDA10023 DVB-C (DVBC)
status SCVYL | signal ffff | snr ffff | ber 000f9f9f | unc 9f9f9f9f | FE_HAS_LOCK
status SCVYL | signal ffff | snr ffff | ber 000f9f9f | unc 9f9f9f9f | FE_HAS_LOCK

External Links