Moderator Control Panel ]

Future of the Linux-Driver

Future of the Linux-Driver

Postby Paule » Thu Oct 07, 2010 6:54 am

Hi,

I own a 6981 since 2 weeks now, so far I'm very happy with card. The only problem I noticed is the one that blckcat already reported (no signal in VDR if you first tune to a HDTV channel after turning on the PC). For me it is not important because my PC runs 24/7, but maybe you like to have a look at it, because there are no reports from users with other DVB-S2 tuners with the same problem.
Btw. there is a VDR Logo on your website ;-)

Anyway, the reason for my post is about the future of the linux driver. At the moment we get excellent support from you, e.g. new drivers when a new kernel is released, I also noticed that you helped a user who needed drivers that are not in the v4l repository :-)
But what will happen in one, two or three years? Will you continue to release new drivers for each kernel? Will it slow down or stop in the worst case?
Is there any chance that the driver will make it into the kernel in near future (which requires 100% open source code).
Why is the driver not completely open source? Is it to protect your work or are NDAs the reason that prevent you from releasing the source code?

Best Regards
Jens
Paule
 
Posts: 3
Joined: Thu Oct 07, 2010 6:08 am

Re: Future of the Linux-Driver

Postby cody » Thu Oct 07, 2010 6:41 pm

hi Jens,

Paule Wrote:I own a 6981 since 2 weeks now, so far I'm very happy with card.


:)

Paule Wrote:The only problem I noticed is the one that blckcat already reported (no signal in VDR if you first tune to a HDTV channel after turning on the PC)...


it's still standing what i asked "blckcat" here:

viewtopic.php?f=22&t=107#p553

because at least i can't reproduce that issue with using "szap-s2" (turn on the PC, lock with "szap-s2" to HD channel/DVB-S2 signal and it's working OK), which suggests it's not driver problem, because "szap-s2" as any other DVB application in Linux is using the standard S2API for DVB-S2 hardware. however, it's important you to check if you can reproduce the problem with "szap-s2" in your environments/setups, because it could be that something else is causing the issue like your LNB local oscillator stability, etc, which means it's not only isolated problem to your environments/setups, but it's not even software bug (in the drivers or the way how VDR handles the dual DVB-S2 card).

Paule Wrote:Anyway, the reason for my post is about the future of the linux driver.


as Linux user myself i understand very well your concerns about it and i'm glad you're asking about it.

Paule Wrote:At the moment we get excellent support from you, e.g. new drivers when a new kernel is released, I also noticed that you helped a user who needed drivers that are not in the v4l repository :-)


it's good to hear that you appreciate my effort to provide as mush as possible pleasant Linux user experience with TBS products.

Paule Wrote:But what will happen in one, two or three years? Will you continue to release new drivers for each kernel? Will it slow down or stop in the worst case?
Is there any chance that the driver will make it into the kernel in near future (which requires 100% open source code).
Why is the driver not completely open source? Is it to protect your work or are NDAs the reason that prevent you from releasing the source code?


i answered those questions in e-mails many times about TBS 6980 and since 6981 is 6980 with updated hardware circuit, but all major integrated circuits on 6981 that the driver controls are the same as on 6980 let me just copy and paste such e-mail, which i believe will give answers to all those questions, but the very short answer is that it will go GPL in the future for sure:

Code: Select All Code
very small part of the current Linux driver for TBS 6980 is not-open-source and it's a binary module instead. TBS 6980 uses some very new chips (actually, it's the only product on the market that is using the latest second generation of DVB-S2 chips made by NXP/Conexant) and more specific what we can't open-source at this point in time, for number of reasons, and that part of the driver is a binary module, is the driver for the DVB-S2 front-end (DVB-S2 tuner + demodulator), but the rest of the driver is fully open source.

most of our Linux customers already have tested the driver and are very satisfied with it - at the beginning they were also concerned that it's not entirely open-source, but after tried it in practice they changed their mind, because actually, the small part that is not-open-source is not a limitation at all and that doesn't prevent the driver to work with different Linux distributions and kernels and we officially provide Linux support in case of troubles.

as i mentioned unlike other manufacturers TBS provide dedicated Linux support and when it's possible we release our drivers as open-source, for example:

http://linuxtv.org/hg/v4l-dvb/file/e0cd9a337600/linux/drivers/media/dvb/frontends/ds3000.c

and we will also fully open-source TBS 6980 driver when the time is right and we are permitted to do that.

so, to summarize about your questions:

* Linux driver for TBS 6980 supports all Linux distributions and all Linux kernels (to be more specific we have tested it will all major Linux kernel versions released in the last two years)

* in case of troubles or if you have some specific request about missing features in the driver we provide dedicated Linux support
cody
 
Posts: 627
Joined: Tue Apr 13, 2010 11:20 pm

Re: Future of the Linux-Driver

Postby Paule » Fri Oct 08, 2010 4:10 am

Hi cody,

thanks for your quick and detailed answer.

cody Wrote:it's still standing what i asked "blckcat" here:

viewtopic.php?f=22&t=107#p553

because at least i can't reproduce that issue with using "szap-s2" (turn on the PC, lock with "szap-s2" to HD channel/DVB-S2 signal and it's working OK), which suggests it's not driver problem, because "szap-s2" as any other DVB application in Linux is using the standard S2API for DVB-S2 hardware. however, it's important you to check if you can reproduce the problem with "szap-s2" in your environments/setups, because it could be that something else is causing the issue like your LNB local oscillator stability, etc, which means it's not only isolated problem to your environments/setups, but it's not even software bug (in the drivers or the way how VDR handles the dual DVB-S2 card).

I understand. I tried to reproduce the problem today, but to my surprise it even worked with VDR.
I moved the card from the Test-PC to the HTPC earlier this week, so the test today was done on different Hardware, maybe that solved it. In case the issue returns I will try to reproduce it with szap and post the results in blckcat's thread (it was not my intension to move this discussion to here)

cody Wrote:i answered those questions in e-mails many times about TBS 6980 and since 6981 is 6980 with updated hardware circuit, but all major integrated circuits on 6981 that the driver controls are the same as on 6980 let me just copy and paste such e-mail, which i believe will give answers to all those questions, but the very short answer is that it will go GPL in the future for sure:


Great, thats what I was hoping to read. As result I have ordered a second 6981 today :-)

Best Regards
Jens
Paule
 
Posts: 3
Joined: Thu Oct 07, 2010 6:08 am

Re: Future of the Linux-Driver

Postby Paule » Thu Apr 14, 2011 5:04 am

6 months ago I asked if you will support new kernels, I didn't expected that the support will stop so fast. The latest kernel you support is 2.6.35 :-(
Please TBS let us know when we will get support for later kernels or if you stopped supporting the card (and give us a chance to sell it before it is worthless)

cody Wrote:
Paule Wrote:But what will happen in one, two or three years? Will you continue to release new drivers for each kernel? Will it slow down or stop in the worst case?
Is there any chance that the driver will make it into the kernel in near future (which requires 100% open source code).
Why is the driver not completely open source? Is it to protect your work or are NDAs the reason that prevent you from releasing the source code?


i answered those questions in e-mails many times about TBS 6980 and since 6981 is 6980 with updated hardware circuit, but all major integrated circuits on 6981 that the driver controls are the same as on 6980 let me just copy and paste such e-mail, which i believe will give answers to all those questions, but the very short answer is that it will go GPL in the future for sure:

Code: Select All Code
very small part of the current Linux driver for TBS 6980 is not-open-source and it's a binary module instead. TBS 6980 uses some very new chips (actually, it's the only product on the market that is using the latest second generation of DVB-S2 chips made by NXP/Conexant) and more specific what we can't open-source at this point in time, for number of reasons, and that part of the driver is a binary module, is the driver for the DVB-S2 front-end (DVB-S2 tuner + demodulator), but the rest of the driver is fully open source.

most of our Linux customers already have tested the driver and are very satisfied with it - at the beginning they were also concerned that it's not entirely open-source, but after tried it in practice they changed their mind, because actually, the small part that is not-open-source is not a limitation at all and that doesn't prevent the driver to work with different Linux distributions and kernels and we officially provide Linux support in case of troubles.

as i mentioned unlike other manufacturers TBS provide dedicated Linux support and when it's possible we release our drivers as open-source, for example:

http://linuxtv.org/hg/v4l-dvb/file/e0cd9a337600/linux/drivers/media/dvb/frontends/ds3000.c

and we will also fully open-source TBS 6980 driver when the time is right and we are permitted to do that.

so, to summarize about your questions:

* Linux driver for TBS 6980 supports all Linux distributions and all Linux kernels (to be more specific we have tested it will all major Linux kernel versions released in the last two years)

* in case of troubles or if you have some specific request about missing features in the driver we provide dedicated Linux support
Paule
 
Posts: 3
Joined: Thu Oct 07, 2010 6:08 am

Re: Future of the Linux-Driver

Postby AndyBurns » Fri Apr 15, 2011 8:22 pm

I'm a new owner of a TBS6981 and need to install it under Fedora15 (alpha/beta release), this is actually a Xen virtual machine with PCI passthrough of two DVB-T tuners and my new DVB-S2 card, the PCI devices are all visible OK and the DVB-T device functions properly in a virtual machine, the mainline cx23885 driver sees the card, but obviously doesn't work with it, so I have to use the out of tree driver.

I'm following the build instructions as closely as I can, but I am using a newer 2.6.38.2 kernel which is required for paravirtual PCI devices, I will persevere trying to tweak the existing driver, to work.

The 2.6.38.x kernel is going to be used by Fedora15 and Ubuntu11.04

However can I ask if there is any progress on either updating the 6981 driver to support newer kernels, or preferably releasing the full source code for integration to mainline kernels?
I got fed-up waiting for open source drivers to be released and pushed to the upstream kernel, gave my card away and will not buy TBS again.
AndyBurns
 
Posts: 29
Joined: Fri Apr 15, 2011 8:04 pm

Re: Future of the Linux-Driver

Postby AndyBurns » Sat Apr 16, 2011 6:17 pm

Attached is a patch to be applied between untarring the source and building the driver

extract the source from linux-s2api-tbs6980_1.tar.bz2 as per normal instructions
cd /root/TBS6981/linux-s2api-tbs6980_1 (or whatever your build folder is)
patch -p0 <tbs6981-2.6.38.2-v1.patch
then run the v4l/tbs-x86_64.sh or v4l/tbs-x86.sh script depending if you're 64 or 32 bit
then make

It allows the V4L modules to compile and link, I've not even attempted installing or running the results, I haven't rebased the V4L sources to 2.6.38, simply fixed up the 2.6.35 versions to account for the mainline kernel changes that have caused the out-of-tree source to bitrot, it's a fairly mechanical job and I highly doubt this will work yet (fairly sure some of my removal of inode parameters and changing functions from returning int to long are wrong).

[Damn the phpBB seems configured not to allow .patch or .txt attachements, so contents are pasted below instead, hopefully no wrapping will occur, happy to email the file to anyone who requests it, patch v1 removed as v2 of the patch is now uploaded later in the thread]
Last edited by AndyBurns on Mon Apr 18, 2011 4:53 am, edited 1 time in total.
I got fed-up waiting for open source drivers to be released and pushed to the upstream kernel, gave my card away and will not buy TBS again.
AndyBurns
 
Posts: 29
Joined: Fri Apr 15, 2011 8:04 pm

Re: Future of the Linux-Driver

Postby AndyBurns » Sat Apr 16, 2011 6:45 pm

Well, I installed the new drivers, and as anticipated they don't work yet

# insmod /lib/modules/2.6.38.2-9.fc15.i686.PAE/kernel/drivers/media/video/cx23885/cx23885.ko
insmod: error inserting '/lib/modules/2.6.38.2-9.fc15.i686.PAE/kernel/drivers/media/video/cx23885/cx23885.ko': -1 Unknown symbol in module

# dmesg
[77305.385682] cx23885: Unknown symbol v4l2_norm_to_name (err 0)
[77305.385899] cx23885: Unknown symbol video_ioctl2 (err 0)
[77305.386035] cx23885: Unknown symbol v4l2_i2c_new_subdev_cfg (err 0)
[77305.386646] cx23885: Unknown symbol cx2341x_ext_ctrls (err 0)
[77305.386757] cx23885: Unknown symbol videobuf_dma_free (err 0)

... and many more other symbols too

I only do kernel tweaks once in a blue moon (when I need to to get my hardware working!) so I'll have to look into this, I'm wondering if it's a kernel taint issue and those V4L symbols are now only available to GPL licenced modules, not proprietary modules?
I got fed-up waiting for open source drivers to be released and pushed to the upstream kernel, gave my card away and will not buy TBS again.
AndyBurns
 
Posts: 29
Joined: Fri Apr 15, 2011 8:04 pm

Re: Future of the Linux-Driver

Postby AndyBurns » Sat Apr 16, 2011 7:15 pm

Hmm, maybe I didn't rmmod/modprobe/insmod the old and new drivers in the correct sequence, things look better after a reboot :o

Code: Select All Code
[    6.325490] pcifront pci-0: Installing PCI frontend
[    6.325669] pcifront pci-0: Creating PCI Frontend Bus 0000:00
[    6.325835] pci 0000:00:00.0: [1131:7130] type 0 class 0x000480
[    6.325984] pci 0000:00:00.0: reg 10: [mem 0xfeb01000-0xfeb013ff]
[    6.326669] pci 0000:00:00.0: supports D1 D2
[    6.326808] pci 0000:00:01.0: [1131:7130] type 0 class 0x000480
[    6.326969] pci 0000:00:01.0: reg 10: [mem 0xfeb02000-0xfeb023ff]
[    6.327610] pci 0000:00:01.0: supports D1 D2
[    6.327778] pci 0000:00:02.0: [1106:3044] type 0 class 0x000c00
[    6.327930] pci 0000:00:02.0: reg 10: [mem 0xfeb00000-0xfeb007ff]
[    6.328027] pci 0000:00:02.0: reg 14: [io  0xec00-0xec7f]
[    6.328697] pci 0000:00:02.0: supports D2
[    6.328861] pci 0000:00:03.0: [14f1:8852] type 0 class 0x000400
[    6.329020] pci 0000:00:03.0: reg 10: [mem 0xfda00000-0xfdbfffff 64bit]
[    6.329718] pci 0000:00:03.0: supports D1 D2
[    6.329723] pci 0000:00:03.0: PME# supported from D0 D1 D2 D3hot
[    6.329747] pci 0000:00:03.0: PME# disabled
[    6.331060] pcifront pci-0: claiming resource 0000:00:00.0/0
[    6.331060] pcifront pci-0: claiming resource 0000:00:01.0/0
[    6.331060] pcifront pci-0: claiming resource 0000:00:02.0/0
[    6.331060] pcifront pci-0: claiming resource 0000:00:02.0/1
[    6.331060] pcifront pci-0: claiming resource 0000:00:03.0/0
[    6.374937] Initialising Xen virtual ethernet driver.
[    6.632895] microcode: CPU0 sig=0x10677, pf=0x10, revision=0x705
[    6.632979] microcode: Microcode Update Driver: v2.00 <tigran@aivazian.fsnet.co.uk>, Peter Oruba
[    6.934850] firewire_ohci 0000:00:02.0: enabling device (0000 -> 0003)
[    6.934987] firewire_ohci 0000:00:02.0: Xen PCI enabling IRQ: 19
[    6.939727] microcode: CPU0 update to revision 0x70a failed
[    6.944533] microcode: CPU0 update to revision 0x70a failed
[    6.947107] microcode: CPU0 update to revision 0x70a failed
[    6.988168] firewire_ohci: Added fw-ohci device 0000:00:02.0, OHCI v1.10, 4 IR + 8 IT contexts, quirks 0x11
[    6.988234] firewire_ohci: inconsistent self IDs
[    7.071663] rc_core: exports duplicate symbol ir_raw_handler_unregister (owned by ir_core)
[    7.076634] modprobe[378]: FATAL: Error inserting ir_nec_decoder (/lib/modules/2.6.38.2-9.fc15.i686.PAE/kernel/drivers/media/rc/ir-nec-decoder.ko): Invalid module for
mat
[    7.082059] rc_core: exports duplicate symbol ir_raw_handler_unregister (owned by ir_core)
[    7.082556] modprobe[380]: FATAL: Error inserting ir_rc5_decoder (/lib/modules/2.6.38.2-9.fc15.i686.PAE/kernel/drivers/media/rc/ir-rc5-decoder.ko): Invalid module for
mat
[    7.088089] rc_core: exports duplicate symbol ir_raw_handler_unregister (owned by ir_core)
[    7.088426] modprobe[382]: FATAL: Error inserting ir_rc6_decoder (/lib/modules/2.6.38.2-9.fc15.i686.PAE/kernel/drivers/media/rc/ir-rc6-decoder.ko): Invalid module format
[    7.093928] rc_core: exports duplicate symbol ir_raw_handler_unregister (owned by ir_core)
[    7.094285] modprobe[384]: FATAL: Error inserting ir_jvc_decoder (/lib/modules/2.6.38.2-9.fc15.i686.PAE/kernel/drivers/media/rc/ir-jvc-decoder.ko): Invalid module format
[    7.099923] rc_core: exports duplicate symbol ir_raw_handler_unregister (owned by ir_core)
[    7.100283] modprobe[386]: FATAL: Error inserting ir_sony_decoder (/lib/modules/2.6.38.2-9.fc15.i686.PAE/kernel/drivers/media/rc/ir-sony-decoder.ko): Invalid module format
[    7.152800] Linux video capture interface: v2.00
[    7.226520] cx23885 driver version 0.0.2 loaded
[    7.226601] cx23885 0000:00:03.0: enabling device (0000 -> 0002)
[    7.226744] cx23885 0000:00:03.0: Xen PCI enabling IRQ: 17
[    7.227763] CORE cx23885[0]: subsystem: 6981:8888, board: TurboSight TBS 6981 [card=30,autodetected]
[    7.929581] saa7130/34: v4l2 driver version 0.2.16 loaded
[    8.004318] cx25840 2-0044: cx23885 A/V decoder found @ 0x88 (cx23885[0])
[    8.682851] cx25840 2-0044: loaded v4l-cx23885-avcore-01.fw firmware (16382 bytes)
[    8.690694] cx23885_dvb_register() allocating 1 frontend(s)
[    8.690710] cx23885[0]: cx23885 based dvb card
[    8.690722] TBS 6981 Frontend 0 Attaching...
[    8.733224] tbs6981fe: module license 'TurboSight Proprietary' taints kernel.
[    8.733240] Disabling lock debugging due to kernel taint
[    8.753082] DVB: registering new adapter (cx23885[0])
[    8.753099] DVB: registering adapter 0 frontend 0 (TurboSight TBS 6981 DVBS/S2 frontend)...
[    8.781801] TurboSight TBS6981 Dual DVB-S2 card port0 MAC=00:22:ab:f0:1a:c6
[    8.781814] cx23885_dvb_register() allocating 1 frontend(s)
[    8.781880] cx23885[0]: cx23885 based dvb card
[    8.781889] TBS 6981 Frontend 1 Attaching...
[    8.800647] DVB: registering new adapter (cx23885[0])
[    8.800664] DVB: registering adapter 1 frontend 0 (TurboSight TBS 6981 DVBS/S2 frontend)...
[    8.829387] TurboSight TBS6981 Dual DVB-S2 card port1 MAC=00:22:ab:f0:1a:c7
[    8.829404] cx23885_dev_checkrevision() Hardware revision = 0xa5
[    8.829435] cx23885[0]/0: found at 0000:00:03.0, rev: 4, irq: 17, latency: 0, mmio: 0xfda00000
[    8.829496] cx23885 0000:00:03.0: setting latency timer to 64
[    8.845584] rc_core: exports duplicate symbol ir_raw_handler_unregister (owned by ir_core)
[    8.845864] modprobe[394]: FATAL: Error inserting rc_tbs_nec (/lib/modules/2.6.38.2-9.fc15.i686.PAE/kernel/drivers/media/rc/keymaps/rc-tbs-nec.ko): Invalid module format
[    8.867091] IR keymap rc-tbs-nec not found
[    8.869368] saa7134 0000:00:00.0: enabling device (0000 -> 0002)
[    8.869519] saa7134 0000:00:00.0: Xen PCI enabling IRQ: 16
[    8.869558] saa7130[0]: found at 0000:00:00.0, rev: 1, irq: 16, latency: 64, mmio: 0xfeb01000
[    8.869602] saa7130[0]: subsystem: 185b:c901, board: Compro Videomate DVB-T200 [card=71,autodetected]
[    8.869625] saa7130[0]: board init: gpio is 843f00
[    8.878120] rc_core: exports duplicate symbol ir_raw_handler_unregister (owned by ir_core)
[    8.878474] modprobe[396]: FATAL: Error inserting rc_videomate_tv_pvr (/lib/modules/2.6.38.2-9.fc15.i686.PAE/kernel/drivers/media/rc/keymaps/rc-videomate-tv-pvr.ko): Invalid module format


I'm not worried about infrared stuff at the moment, the TBS version of the CX23885 seems to be loading for the DVB-S2 card, as well as the SAA7134 for my old DVB-T cards, looking under /dev/dbv I see four adapters (two from the DVB-S2 and one each for both my DVB-T cards).

However, if I run a scandvb -a 0 -c it crashes ...

Code: Select All Code
[  697.240534] BUG: unable to handle kernel paging request at 80a86fb1
[  697.240558] IP: [<ed48b7f8>] dvb_frontend_ioctl+0x18/0xb87 [dvb_core]
[  697.240584] *pdpt = 0000000001f8a027 *pde = 0000000000000000
[  697.240601] Oops: 0000 [#1] SMP
[  697.240615] last sysfs file: /sys/devices/virtual/tty/console/active
[  697.240627] Modules linked in: sco bnep l2cap bluetooth rfkill 8021q garp stp llc tda1004x saa7134_dvb tbs6981fe(P) cx25840 cx23885 saa7134 cx2341x v4l2_common videobuf_dvb videodev dvb_core v4l1_compat videobuf_dma_sg videobuf_core ir_common ir_core btcx_risc firewire_ohci tveeprom i2c_core firewire_core crc_itu_t microcode xen_netfront xen_pcifront uinput ipv6 xen_blkfront [last unloaded: scsi_wait_scan]
[  697.240781]
[  697.240789] Pid: 1094, comm: scandvb Tainted: P            2.6.38.2-9.fc15.i686.PAE #1
[  697.240812] EIP: 0061:[<ed48b7f8>] EFLAGS: 00010246 CPU: 0
[  697.240829] EIP is at dvb_frontend_ioctl+0x18/0xb87 [dvb_core]
[  697.240841] EAX: c282e840 EBX: fffffff2 ECX: c282ea80 EDX: 80a86f3d
[  697.240852] ESI: c282ea80 EDI: c282ea80 EBP: eb883e60 ESP: eb883e20
[  697.240863]  DS: 007b ES: 007b FS: 00d8 GS: 00e0 SS: 0069
[  697.240874] Process scandvb (pid: 1094, ti=eb882000 task=eafe8000 task.ti=eb882000)
[  697.240887] Stack:
[  697.240894]  c0435a86 c282e480 ed484731 c282ea80 eb883e38 c042f5b3 eb883e40 000000a8
[  697.240929]  c282e840 00000000 eb883e60 c05db05e 080522c0 fffffff2 c282ea80 c282ea80
[  697.240964]  eb883f08 ed484770 000000a8 c282e840 00000002 080522c0 80a86f3d c1fd5e20
[  697.240998] Call Trace:
[  697.241011]  [<c0435a86>] ? __might_sleep+0x29/0xe4
[  697.241029]  [<ed484731>] ? dvb_usercopy+0x66/0x101 [dvb_core]
[  697.241043]  [<c042f5b3>] ? should_resched+0xd/0x27
[  697.241058]  [<c05db05e>] ? _copy_from_user+0x3c/0x50
[  697.241059]  [<ed484770>] dvb_usercopy+0xa5/0x101 [dvb_core]
[  697.241059]  [<c04cb734>] ? handle_pte_fault+0x34f/0x8f2
[  697.241059]  [<c059cec4>] ? file_has_perm+0x9a/0xb3
[  697.241059]  [<ed48b7e0>] ? dvb_frontend_ioctl+0x0/0xb87 [dvb_core]
[  697.241059]  [<ed4847f8>] dvb_generic_ioctl+0x2c/0x34 [dvb_core]
[  697.241059]  [<ed48b7e0>] ? dvb_frontend_ioctl+0x0/0xb87 [dvb_core]
[  697.241059]  [<ed4847cc>] ? dvb_generic_ioctl+0x0/0x34 [dvb_core]
[  697.241059]  [<c04f9e6d>] do_vfs_ioctl+0x451/0x482
[  697.241059]  [<c059d135>] ? selinux_file_ioctl+0x39/0x3c
[  697.241059]  [<c04f9ee6>] sys_ioctl+0x48/0x6a
[  697.241059]  [<c040969f>] sysenter_do_call+0x12/0x28
[  697.241059] Code: c0 0f 49 c7 eb 02 31 c0 81 c4 b0 00 00 00 5b 5e 5f 5d c3 55 89 e5 57 56 53 83 ec 34 3e 8d 74 26 00 83 3d 04 27 49 ed 00 89 45 e0 <8b> 42 74 89 cb 89 55 e4 8b 70 38 8b be 24 02 00 00 74 1b 0f b6
[  697.241059] EIP: [<ed48b7f8>] dvb_frontend_ioctl+0x18/0xb87 [dvb_core] SS:ESP 0069:eb883e20
[  697.241059] CR2: 0000000080a86fb1
[  697.241059] ---[ end trace a40c4e1e8f3fe8af ]---


Most likely my changes around the ioctl aren't right ...
I got fed-up waiting for open source drivers to be released and pushed to the upstream kernel, gave my card away and will not buy TBS again.
AndyBurns
 
Posts: 29
Joined: Fri Apr 15, 2011 8:04 pm

Re: Future of the Linux-Driver

Postby AndyBurns » Sun Apr 17, 2011 3:02 am

OK, a few more tweaks changing functions from int to long and removing inode parameters and I have a driver that will load and go through the motions of a scan without crashing using

scandvb -v -a 2 /usr/share/dvb-apps/dvb-s/Astra-28.2E

it doesn't actually find any channels though, just semi-meaningful errors and messages.

Code: Select All Code
>>> tune to: 11720:h:0:29500
DiSEqC: switch pos 0, 18V, hiband (index 3)
>>> tuning status == 0x01
>>> tuning status == 0x03
>>> tuning status == 0x03
>>> tuning status == 0x01
>>> tuning status == 0x01
>>> tuning status == 0x03
>>> tuning status == 0x03
>>> tuning status == 0x01
>>> tuning status == 0x01
>>> tuning status == 0x03
WARNING: >>> tuning failed!!!
>>> tune to: 11720:h:0:29500 (tuning failed)
DiSEqC: switch pos 0, 18V, hiband (index 3)
>>> tuning status == 0x03
>>> tuning status == 0x03
>>> tuning status == 0x01
>>> tuning status == 0x01
>>> tuning status == 0x03
>>> tuning status == 0x03
>>> tuning status == 0x03
>>> tuning status == 0x01
>>> tuning status == 0x03
>>> tuning status == 0x03
WARNING: >>> tuning failed!!!
>>> tune to: 11740:v:0:27500
DiSEqC: switch pos 0, 13V, hiband (index 2)
>>> tuning status == 0x1f
WARNING: filter timeout pid 0x0011
WARNING: filter timeout pid 0x0000
WARNING: filter timeout pid 0x0010
>>> tune to: 11758:h:0:27500
DiSEqC: switch pos 0, 18V, hiband (index 3)
>>> tuning status == 0x03
>>> tuning status == 0x03
>>> tuning status == 0x03
>>> tuning status == 0x01
>>> tuning status == 0x03
>>> tuning status == 0x01
>>> tuning status == 0x03
>>> tuning status == 0x03
>>> tuning status == 0x01
>>> tuning status == 0x01
WARNING: >>> tuning failed!!!
>>> tune to: 11758:h:0:27500 (tuning failed)
DiSEqC: switch pos 0, 18V, hiband (index 3)
>>> tuning status == 0x01
>>> tuning status == 0x01
>>> tuning status == 0x01
>>> tuning status == 0x01
>>> tuning status == 0x01
>>> tuning status == 0x01
>>> tuning status == 0x03
>>> tuning status == 0x03
>>> tuning status == 0x01
>>> tuning status == 0x01
WARNING: >>> tuning failed!!!
>>> tune to: 11778:v:0:27500
DiSEqC: switch pos 0, 13V, hiband (index 2)
>>> tuning status == 0x1f
WARNING: filter timeout pid 0x0011
WARNING: filter timeout pid 0x0000
WARNING: filter timeout pid 0x0010
>>> tune to: 11798:h:0:29500
DiSEqC: switch pos 0, 18V, hiband (index 3)
>>> tuning status == 0x03
>>> tuning status == 0x01
>>> tuning status == 0x01
>>> tuning status == 0x01
>>> tuning status == 0x01
>>> tuning status == 0x03
>>> tuning status == 0x03
>>> tuning status == 0x01
>>> tuning status == 0x01
>>> tuning status == 0x03
WARNING: >>> tuning failed!!!
>>> tune to: 11798:h:0:29500 (tuning failed)
DiSEqC: switch pos 0, 18V, hiband (index 3)
>>> tuning status == 0x03
>>> tuning status == 0x01
>>> tuning status == 0x03
>>> tuning status == 0x03
>>> tuning status == 0x03
>>> tuning status == 0x01
>>> tuning status == 0x01
>>> tuning status == 0x01
>>> tuning status == 0x03
>>> tuning status == 0x01
WARNING: >>> tuning failed!!!


Some transponders seem to fail tuning, other transponders can apparently be tuned, but don't decode any data, I think status 0x1f shows all the demodulator status bits are happy.

I've tried with the v4l-cx23885-avcore-01.fw file that comes with Fedora15, and the version from the TBS source code, doesn't make any difference.

I haven't tried the TBS6981 under Windows, so I'm having to assume the card actually works, I know the dish is fine as I have a Sky box on another port of the quad LNB. I could do with some clues to get further, anyone?
I got fed-up waiting for open source drivers to be released and pushed to the upstream kernel, gave my card away and will not buy TBS again.
AndyBurns
 
Posts: 29
Joined: Fri Apr 15, 2011 8:04 pm

Re: Future of the Linux-Driver

Postby AndyBurns » Sun Apr 17, 2011 6:00 am

The problem when running scandvb before turned out to be a Xen issue (no DMA transfers due to missing iommu=soft on kernel command line), so I now have a working TBS6981 under 2.6.38.2 (Fedora15 nightly) :lol: :lol: :lol:

Code: Select All Code
>>> tune to: 12285:v:0:27500
DiSEqC: switch pos 0, 13V, hiband (index 2)
>>> tuning status == 0x1f
PAT
PMT 0x0104 for service 0x11fa
PMT 0x010a for service 0x11fc
PMT 0x010e for service 0x1f50
PMT 0x0112 for service 0x1f57
PMT 0x0118 for service 0x1f85
PMT 0x011e for service 0x1f90
PMT 0x0106 for service 0x1fa7
PMT 0x0119 for service 0x1fd3
PMT 0x0113 for service 0x1fe2
PMT 0x0103 for service 0x2331
PMT 0x010b for service 0x2462
PMT 0x0107 for service 0x1210
PMT 0x0101 for service 0x125f
PMT 0x0100 for service 0x1268
PMT 0x0105 for service 0x178c
PMT 0x010f for service 0x1f4e
PMT 0x010c for service 0x125d
PMT 0x010d for service 0x2457
SDT (actual TS)
0x07ee 0x178c: pmt_pid 0x0105 BSkyB -- Sky Living (running, scrambled)
0x07ee 0x1f4e: pmt_pid 0x010f BSkyB -- Sky Upgrade Dal (running, scrambled)
0x07ee 0x1f50: pmt_pid 0x010e BSkyB -- Movie Finder (running, scrambled)
0x07ee 0x1f57: pmt_pid 0x0112 BSkyB -- Vegas Wanted DOA (running)
0x07ee 0x1f85: pmt_pid 0x0118 BSkyB -- Vegas Hit It Poker (running)
0x07ee 0x1f90: pmt_pid 0x011e BSkyB -- Vegas Cluedo (running)
0x07ee 0x1fa7: pmt_pid 0x0106 BSkyB -- Vegas DOND (running, scrambled)
0x07ee 0x1fd3: pmt_pid 0x0119 BSkyB -- Carbon Calculator (running, scrambled)
0x07ee 0x1fe2: pmt_pid 0x0113 BSkyB -- Vegas Cashino (running, scrambled)
0x07ee 0x2331: pmt_pid 0x0103 BSkyB -- Sky 1 ETV Slot1 (running, scrambled)
0x07ee 0x2457: pmt_pid 0x010d BSkyB -- Pub Channel (running, scrambled)
SDT (actual TS)
0x07ee 0x2462: pmt_pid 0x010b BSkyB -- Sky Sports 2 (running, scrambled)
WARNING: filter timeout pid 0x0011
NIT (actual TS)
Network Name 'ASTRA'
WARNING: filter timeout pid 0x0010



Code: Select All Code
# szap -a 2 -c andy.conf "BBC One HD"
reading channels from file 'andy.conf'
zapping to 433 'BBC One HD':
sat 0, frequency = 10847 MHz V, symbolrate 22000000, vpid = 0x0000, apid = 0x151a
using '/dev/dvb/adapter2/frontend0' and '/dev/dvb/adapter2/demux0'
status 1f | signal bf73 | snr f5c1 | ber 00000000 | unc 00000000 | FE_HAS_LOCK
status 1f | signal bf73 | snr f5c1 | ber 00000000 | unc 00000000 | FE_HAS_LOCK
status 1f | signal bf73 | snr f5c1 | ber 00000000 | unc 00000000 | FE_HAS_LOCK
status 1f | signal bf73 | snr f776 | ber 00000000 | unc 00000000 | FE_HAS_LOCK
status 1f | signal bf73 | snr f5c1 | ber 00000000 | unc 00000000 | FE_HAS_LOCK


And within a gnome session tunnelled over SSH to the virtual machine, I can (just about!) watch video using

mplayer dvb://3@"BBC NEWS"


I just need to get it talking to MythTV instead of my ancient CentOS virtual machine. I'll post the updated version of my patches here later ...
I got fed-up waiting for open source drivers to be released and pushed to the upstream kernel, gave my card away and will not buy TBS again.
AndyBurns
 
Posts: 29
Joined: Fri Apr 15, 2011 8:04 pm

Next

Return to Linux

Who is online

Users browsing this forum: No registered users and 4 guests