TwinhanDTV HDTV Mini Cab

From LinuxMCE
Jump to: navigation, search
Version Status Date Updated Updated By
710 Unknown N/A N/A
810 Unknown N/A N/A
1004 Unknown N/A N/A
1204 Unknown N/A N/A
1404 Unknown N/A N/A
Usage Information

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 (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)