[linux-dvb] Twinhan DTV MiniCab DVB-C has many artifacts
Jonek
jonek at gmx.net
Sat Feb 11 13:43:00 CET 2006
On Fri, 2006-02-10 at 09:58 +0400, Manu Abraham wrote:
> Jonek wrote:
> > I have a Twinhan DTV MiniCab DVB-C card (VP2021). This card has no CI
> > module! As I know from the archives people had problems with similar
> > kinds of cards. My problem is that if I tune a channel i get lots of
> > artifacts in the picture (but you can still recognize things) and nearly
> > unrecogizable audio. Please tell me how to fix this or what further info
> > you need.
>
> Test with this tree, let's know how it looks for you.
> http://www.thadathil.net/cgi-bin/hgwebdir.cgi/v4l-algo-test?cmd=archive;node=70266933831bc8efd85ecf808651595f79aede60;type=bz2
Tanks for your prompt answer. In the archive you pointed me to I made
make and copied the following files over the ones in my current kernel's
module dir:
# cp bt878.ko dst.ko dst_ca.ko
dvb-bt8xx.ko /lib/modules/2.6.15.3/kernel/drivers/media/dvb/bt8xx
I don't know if this is the right precedure and if I have to do this for
further modules. Please give me a hint here. The following modules are
loaded as dependencies of dvb-bt8xx:
dvb_bt8xx 11268 0
nxt6000 6276 1 dvb_bt8xx
mt352 5508 1 dvb_bt8xx
dvb_pll 8964 1 dvb_bt8xx
sp887x 6532 1 dvb_bt8xx
dst_ca 10880 1 dvb_bt8xx
dvb_core 66984 2 dvb_bt8xx,dst_ca
cx24110 6532 1 dvb_bt8xx
or51211 8324 1 dvb_bt8xx
lgdt330x 6940 1 dvb_bt8xx
dst 23300 2 dvb_bt8xx,dst_ca
bt878 8152 2 dvb_bt8xx,dst
tuner 35364 0
bttv 147152 2 dvb_bt8xx,bt878
video_buf 15748 1 bttv
v4l2_common 4864 1 bttv
btcx_risc 3848 1 bttv
tveeprom 12560 1 bttv
videodev 7296 1 bttv
So far the new modules load succesfully. But I get a kernel error if an
application tries to use the drive.
# modprobe dst verbose=5
[-- output from dmesg --]
Linux video capture interface: v1.00
bttv: driver version 0.9.16 loaded
bttv: using 8 buffers with 2080k (520 pages) each for capture
bttv: Bt8xx card found (0).
ACPI: PCI Interrupt 0000:02:0d.0[A] -> GSI 21 (level, low) -> IRQ 21
bttv0: Bt878 (rev 17) at 0000:02:0d.0, irq: 21, latency: 64, mmio:
0xf7efe000
bttv0: detected: Twinhan VisionPlus DVB [card=113], PCI subsystem ID is
1822:0001
bttv0: using: Twinhan DST + clones [card=113,autodetected]
bttv0: gpio: en=00000000, out=00000000 in=00ffffff [init]
bttv0: using tuner=4
bttv0: add subdevice "dvb0"
bt878: AUDIO driver version 0.0.0 loaded
bt878: Bt878 AUDIO function found (0).
ACPI: PCI Interrupt 0000:02:0d.1[A] -> GSI 21 (level, low) -> IRQ 21
bt878(0): Bt878 (rev 17) at 02:0d.1, irq: 21, latency: 64, memory:
0xf7eff000
# modprobe dvb_bt8xx
[-- output from dmesg --]
DVB: registering new adapter (bttv0).
dst(0) dst_comm_init: Initializing DST.
dst(0) dst_gpio_outb: mask=[ffffffff], enbb=[0001], outhigh=[0000]
dst(0) rdc_reset_state: Resetting state machine
dst(0) dst_gpio_outb: mask=[0002], enbb=[0002], outhigh=[0000]
dst(0) dst_gpio_outb: mask=[0002], enbb=[0002], outhigh=[0002]
writing [ 00 06 00 00 00 00 00 fa ]
dst(0) dst_gpio_outb: mask=[ffffffff], enbb=[0000], outhigh=[0000]
dst(0) read_dst: reply is 0xff
dst(0) dst_wait_dst_ready: dst wait ready after 1
dst(0) read_dst: reply is 0x0
0x44 0x43 0x54 0x2d 0x43 0x49 0x6c
dst(0) dst_gpio_outb: mask=[ffffffff], enbb=[0000], outhigh=[0000]
dst(0) dst_get_device_id: Recognise [DCT-CI]
dst(0) dst_type_print: DST type: cable
DST type flags : 0x8 firmware version = 1 0x10 firmware version = 2
dst(0) dst_comm_init: Initializing DST.
dst(0) dst_gpio_outb: mask=[ffffffff], enbb=[0001], outhigh=[0000]
dst(0) rdc_reset_state: Resetting state machine
dst(0) dst_gpio_outb: mask=[0002], enbb=[0002], outhigh=[0000]
dst(0) dst_gpio_outb: mask=[0002], enbb=[0002], outhigh=[0002]
writing [ 00 0a 00 00 00 00 00 f6 ]
dst(0) dst_gpio_outb: mask=[ffffffff], enbb=[0000], outhigh=[0000]
dst(0) read_dst: reply is 0xff
dst(0) dst_wait_dst_ready: dst wait NOT ready after 200
dst(0) dst_get_mac: Unsupported Command
dst(0) dst_probe: MAC: Unsupported command
dst_ca_attach: registering DST-CA device
DVB: registering frontend 0 (DST DVB-C)...
I tried kaffeine to watch a channel and got this:
~ > Tuning to : VOX / autocount : 0
Using DVB card "DST DVB-C"
tuning DVB-C to 458000000
inv:2 sr:6900000 fecH:0 mod:3
polling....
Getting frontend event
[-- output from dmesg --]
dst(0) dst_set_freq: set Frequency 0
dst(0) dst_set_frontend: Set Frequency=[0]
dst(0) dst_set_symbolrate: set symrate 0
dst(0) dst_set_symbolrate: DCT-CI
dst(0) dst_write_tuna: type_flags 0x218
dst(0) dst_comm_init: Initializing DST.
dst(0) dst_gpio_outb: mask=[ffffffff], enbb=[0001], outhigh=[0000]
dst(0) rdc_reset_state: Resetting state machine
dst(0) dst_gpio_outb: mask=[0002], enbb=[0002], outhigh=[0000]
dst(0) dst_gpio_outb: mask=[0002], enbb=[0002], outhigh=[0002]
writing [ 00 00 00 00 00 00 20 e0 ]
dst(0) dst_gpio_outb: mask=[ffffffff], enbb=[0000], outhigh=[0000]
dst(0) read_dst: reply is 0xff
dst(0) dst_wait_dst_ready: dst wait NOT ready after 200
dst(0) dst_set_freq: set Frequency 458000000
dst(0) dst_tune_frontend: Set Frequency=[458000000]
dst(0) dst_set_symbolrate: set symrate 6900000
dst(0) dst_set_symbolrate: DCT-CI
dst(0) dst_write_tuna: type_flags 0x218
dst(0) dst_comm_init: Initializing DST.
dst(0) dst_gpio_outb: mask=[ffffffff], enbb=[0001], outhigh=[0000]
dst(0) rdc_reset_state: Resetting state machine
dst(0) dst_gpio_outb: mask=[0002], enbb=[0002], outhigh=[0000]
dst(0) dst_gpio_outb: mask=[0002], enbb=[0002], outhigh=[0002]
writing [ 06 fd 10 00 1a f4 40 9f ]
dst(0) write_dst: _write_dst error (err == -5, len == 0x08, b0 == 0x06)
dst(0) dst_error_recovery: Trying to return from previous errors.
dst(0) dst_gpio_outb: mask=[ffffffff], enbb=[0000], outhigh=[0000]
dst(0) dst_gpio_outb: mask=[ffffffff], enbb=[0001], outhigh=[0000]
dst(0) write_dst: _write_dst error (err == -5, len == 0x08, b0 == 0x06)
dst(0) dst_error_recovery: Trying to return from previous errors.
dst(0) dst_gpio_outb: mask=[ffffffff], enbb=[0000], outhigh=[0000]
dst(0) dst_gpio_outb: mask=[ffffffff], enbb=[0001], outhigh=[0000]
dst(0) write_dst: RDC 8820 RESET
dst(0) dst_error_bailout: Trying to bailout from previous error.
dst(0) rdc_8820_reset: Resetting DST
dst(0) dst_gpio_outb: mask=[0004], enbb=[0004], outhigh=[0000]
dst(0) dst_gpio_outb: mask=[0004], enbb=[0004], outhigh=[0004]
dst(0) dst_gpio_outb: mask=[ffffffff], enbb=[0000], outhigh=[0000]
dst(0) dst_gpio_outb: mask=[ffffffff], enbb=[0000], outhigh=[0000]
dst(0) dst_write_tuna: write not successful
Unable to handle kernel NULL pointer dereference at virtual address
00000000
printing eip:
f93106a1
*pde = 00000000
Oops: 0002 [#2]
PREEMPT SMP
Modules linked in: dvb_bt8xx nxt6000 mt352 dvb_pll sp887x dst_ca
dvb_core cx24110 or51211 lgdt330x dst bt878 tuner bttv video_buf
v4l2_common btcx_risc tveeprom videodev nvidia bnep rfcomm l2cap nfsd
exportfs lockd sunrpc nls_iso8859_15 ntfs dm_mod sd_mod usb_storage
scsi_mod hci_usb bluetooth usbhid snd_emu10k1_synth snd_emux_synth
snd_seq_virmidi snd_seq_midi_emul snd_seq_midi snd_seq_midi_event
snd_seq snd_emu10k1 snd_intel8x0 snd_rawmidi snd_seq_device
snd_ac97_codec snd_pcm_oss snd_mixer_oss em8300 snd_pcm adv717x
snd_timer snd_ac97_bus snd_util_mem snd_hwdep snd ehci_hcd uhci_hcd
sk98lin firmware_class i2c_i801 snd_page_alloc usbcore
CPU: 0
EIP: 0060:[<f93106a1>] Tainted: P VLI
EFLAGS: 00210246 (2.6.15.3)
EIP is at dst_tune_frontend+0xf0/0xfc [dst]
eax: 00000000 ebx: d34e5000 ecx: d6e9710c edx: d34e5000
esi: d6e9710c edi: d6e9710c ebp: 00000002 esp: c3893f6c
ds: 007b es: 007b ss: 0068
Process kdvb-fe-0 (pid: 1623, threadinfo=c3892000 task=da879a30)
Stack: d34e5000 00000001 d6e9710c f980a078 d6e9710c d34e5004 1b4c8680
00000000
d34e5000 d6e9710c d6e9710c f980a449 d6e9710c 00000000 00000000
00000000
da879a30 c012b931 c3893fb4 c3893fb4 76646b28 65662d62 d600302d
00000000
Greets, Jonek.
More information about the linux-dvb
mailing list