TwinhanDTV HDTV Mini Cab

From LinuxMCE
Revision as of 12:45, 1 August 2008 by Mami (Talk | contribs)

Jump to: navigation, search

Cards

  • TwinhanDTV HDTV Mini Cab DVB-C (VP-2021) [1]

Problem

There is a other TwinhanDTV card whit CI that has the same ID as this one. You can use this card "as it is", but you can't scan for channels then. To get this working you need to change some kernel code.

Solution

Download kernel source (via apt-get) + nessesary packages!

apt-get install linux-source-2.6.22 kernel-package libncurses5-dev fakeroot (all?)
tar jxvf <kernel source>
ln -s <kernel source> linux
cd linux

Edit drivers/media/dvb/bt8xx/dst.c in kernel source

Line 845-852:
{
 .device_id = "DCT-CI",
 .offset = 1,
 .dst_type = DST_TYPE_IS_CABLE,
 .type_flags = DST_TYPE_HAS_MULTI_FE | DST_TYPE_HAS_FW_1 | DST_TYPE_HAS_FW_2 | DST_TYPE_HAS_VLF,
 .dst_feature = DST_TYPE_HAS_CA,
 .tuner_type = 0
},

Change:
.dst_feature =  DST_TYPE_HAS_CA,
To:
.dst_feature =  0,
Line 1359-1366:
if ((state->type_flags & DST_TYPE_HAS_VLF) &&
  !(state->dst_type == DST_TYPE_IS_CABLE) &&
  !(state->dst_type == DST_TYPE_IS_ATSC)) {
  
  if (state->rx_tuna[9] != dst_check_sum(&state->rx_tuna[0], 9)) {
          dprintk(verbose, DST_INFO, 1, "checksum failure ? ");
          return -EIO;
  }

Change:
!(state->dst_type == DST_TYPE_IS_CABLE) &&
To:
// !(state->dst_type == DST_TYPE_IS_CABLE) &&

Use default kernel .config

cp /boot/config-$(uname -r) .config

Apply config and prepare

make oldconfig && make prepare && make prepare scripts

Build only the driver

make M=drivers/media/dvb/bt8xx/

Copy modules to your default working kernel

cp drivers/media/dvb/bt8xx/*.ko /lib/modules/<version>/kernel/drivers/media/dvb/bt8xx/

Reboot



--Mami 04:45, 1 August 2008 (PDT)