Moderator Control Panel ]

Driver issue using kernel 3.6.2

Driver issue using kernel 3.6.2

Postby keybits » Thu Nov 01, 2012 6:35 pm

Hello,

Description of the problem:
I've installed the 6980 driver v121021 with kernel 3.6.2 and it is loading successfully.

But as soon as I perform a tune request or lock, the driver (i.e. tbs6980fe in this case) crashes due to a paging request. This happens using szap-s2, scan-s2 (see files below) or anything else like vdr. I'm not using IR, so I turned it off by setting enable_tbs_ir to 0.

I'm writing this post having read the "How to report a problem with TBS Linux drivers" post. I've read the README files, but it seems my case is not covered there.

Best regards
keybits

P.S.: The logs:
The full dmesg log is too large (about 52k) to post it here, please tell me which attachment extensions are allowed.

dmesg | grep cx2
Code: Select All Code
[    4.581211] cx23885 driver version 0.0.3 loaded
[    4.581329] CORE cx23885[0]: subsystem: 6980:8888, board: TurboSight TBS 6980 [card=37,autodetected]
[    5.328460] cx25840 3-0044: cx23885 A/V decoder found @ 0x88 (cx23885[0])
[    5.972986] cx25840 3-0044: loaded v4l-cx23885-avcore-01.fw firmware (16382 bytes)
[    5.988560] cx23885_dvb_register() allocating 1 frontend(s)
[    5.988562] cx23885[0]: cx23885 based dvb card
[    6.128845] DVB: registering new adapter (cx23885[0])
[    6.156675] cx23885_dvb_register() allocating 1 frontend(s)
[    6.156685] cx23885[0]: cx23885 based dvb card
[    6.246188] DVB: registering new adapter (cx23885[0])
[    6.274423] cx23885_dev_checkrevision() Hardware revision = 0xb0
[    6.274427] cx23885[0]/0: found at 0000:04:00.0, rev: 2, irq: 17, latency: 0, mmio: 0xfbe00000


lspci
Code: Select All Code
00:00.0 Host bridge: Intel Corporation Core Processor DMI (rev 11)
00:03.0 PCI bridge: Intel Corporation Core Processor PCI Express Root Port 1 (rev 11)
00:08.0 System peripheral: Intel Corporation Core Processor System Management Registers (rev 11)
00:08.1 System peripheral: Intel Corporation Core Processor Semaphore and Scratchpad Registers (rev 11)
00:08.2 System peripheral: Intel Corporation Core Processor System Control and Status Registers (rev 11)
00:08.3 System peripheral: Intel Corporation Core Processor Miscellaneous Registers (rev 11)
00:10.0 System peripheral: Intel Corporation Core Processor QPI Link (rev 11)
00:10.1 System peripheral: Intel Corporation Core Processor QPI Routing and Protocol Registers (rev 11)
00:1a.0 USB controller: Intel Corporation 5 Series/3400 Series Chipset USB2 Enhanced Host Controller (rev 06)
00:1b.0 Audio device: Intel Corporation 5 Series/3400 Series Chipset High Definition Audio (rev 06)
00:1c.0 PCI bridge: Intel Corporation 5 Series/3400 Series Chipset PCI Express Root Port 1 (rev 06)
00:1c.3 PCI bridge: Intel Corporation 5 Series/3400 Series Chipset PCI Express Root Port 4 (rev 06)
00:1c.5 PCI bridge: Intel Corporation 5 Series/3400 Series Chipset PCI Express Root Port 6 (rev 06)
00:1d.0 USB controller: Intel Corporation 5 Series/3400 Series Chipset USB2 Enhanced Host Controller (rev 06)
00:1e.0 PCI bridge: Intel Corporation 82801 PCI Bridge (rev a6)
00:1f.0 ISA bridge: Intel Corporation 5 Series Chipset LPC Interface Controller (rev 06)
00:1f.2 SATA controller: Intel Corporation 5 Series/3400 Series Chipset 6 port SATA AHCI Controller (rev 06)
00:1f.3 SMBus: Intel Corporation 5 Series/3400 Series Chipset SMBus Controller (rev 06)
01:00.0 VGA compatible controller: NVIDIA Corporation GF119 [GeForce GT 520] (rev a1)
01:00.1 Audio device: NVIDIA Corporation GF119 HDMI Audio Controller (rev a1)
02:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller (rev 03)
03:00.0 SATA controller: JMicron Technology Corp. JMB363 SATA/IDE Controller (rev 03)
03:00.1 IDE interface: JMicron Technology Corp. JMB363 SATA/IDE Controller (rev 03)
04:00.0 Multimedia video controller: Conexant Systems, Inc. CX23885 PCI Video and Audio Decoder (rev 02)

uname -a
Code: Select All Code
Linux openelec 3.6.2 #28 SMP Wed Oct 31 19:27:48 CET 2012 i686 GNU/Linux
keybits
 
Posts: 7
Joined: Thu Nov 01, 2012 3:32 pm

Re: Driver issue using kernel 3.6.2

Postby SergioDanielG » Sat Nov 03, 2012 6:20 am

Hi keybits.
Try to attach zip files and include all information as you can.

Best regards.
SergioDanielG
 
Posts: 356
Joined: Tue May 31, 2011 3:53 am
Location: Tostado (SF) Argentina

Re: Driver issue using kernel 3.6.2

Postby cody » Tue Nov 06, 2012 4:25 am

hello, i've just tested on kernel 3.6.2 with 6980, disabled remote control via 'enable_tbs_ir' and i can successfully lock, i.e. i can't reproduce problem. so, please, provide more details - do you use 32-bit or 64-bit kernel? if you use 32-bit did you use "./v4l/tbs-x86_r3.sh" script to set the building environment?
cody
 
Posts: 627
Joined: Tue Apr 13, 2010 11:20 pm

Re: Driver issue using kernel 3.6.2

Postby keybits » Wed Nov 07, 2012 6:43 am

Thanks for yout replies. First, here are the dmesg logs, both reflect a fresh boot and a call of scan-s2 and szap-s2, respectively.
Attachments
dmesg.zip
dmesg logs
(28.72 KiB) Downloaded 407 times
keybits
 
Posts: 7
Joined: Thu Nov 01, 2012 3:32 pm

Re: Driver issue using kernel 3.6.2

Postby cody » Wed Nov 07, 2012 6:49 am

hmm, in your log those messages:

"dtv_property_legacy_params_sync: doesn't know how to handle a DVBv3 call to delivery system 70"

look very suspicious. so, please, try the following:

# rm -rf /lib/modules/<kernel_version>/kernel/drivers/media/

where "<kernel_version>" is specific to your system - that will delete all DVB modules from your running kernel and then reinstall TBS drivers with running again "make install". my best guess is that DVB modules in your system mixed up in a bad way, especially based on the fact that i can't reproduce the problem and i always do the above, i.e. delete the old modules when install new drivers.
cody
 
Posts: 627
Joined: Tue Apr 13, 2010 11:20 pm

Re: Driver issue using kernel 3.6.2

Postby keybits » Wed Nov 07, 2012 7:13 am

cody Wrote:do you use 32-bit or 64-bit kernel? if you use 32-bit did you use "./v4l/tbs-x86_r3.sh" script to set the building environment?


I'm using 32-bit and yes, I ran tbs-x86_r3.sh, I even made sure that the *.o fils matched size and timestamp of the *.o.x86_r3 files.

The first attempt I made was building the driver using
Code: Select All Code
make && make install
, but this caused a
Code: Select All Code
videodev: Duplicate symbol ...
error (sorry I didn't keep a copy of that dmesg). So I had to customize the kernel sources on my own (cx23885.h, cx23885-cards.c and cx23885-dvb.c plus Makefile(s) and Kconfig(s)).

I use the v4l-cx23885-avcore-01.fw firmware file provided with the driver, not the one supplied with the OpenELEC dvb firmware package. I'm not familiar with firmware files, should I rather use the firmware that 'belongs' to the kernel or those from the driver package? I compared them and in fact they differ.

best regards
keybits
keybits
 
Posts: 7
Joined: Thu Nov 01, 2012 3:32 pm

Re: Driver issue using kernel 3.6.2

Postby keybits » Wed Nov 07, 2012 7:17 am

cody Wrote:... please, try the following:
# rm -rf /lib/modules/<kernel_version>/kernel/drivers/media/


Ok I'll give it a try.
keybits
 
Posts: 7
Joined: Thu Nov 01, 2012 3:32 pm

Re: Driver issue using kernel 3.6.2

Postby keybits » Sun Nov 11, 2012 10:33 pm

@cody: Ok, this way it works.

It took me a quite long time to do this in OpenELEC because I'm new to it... I'd feel much better if there was a documentation on what to edit in the cx23885 sources, Makefile and Kconfig (and hopefully only those) to get the drivers running, instead of breaking all other media drivers. Has anyone seen such docs anywhere?

However, thanks again for your tips.

Best regards
keybits
keybits
 
Posts: 7
Joined: Thu Nov 01, 2012 3:32 pm

Re: Driver issue using kernel 3.6.2

Postby updatelee » Mon Nov 12, 2012 1:18 am

This card uses precompiled libs like some other TBS cards right? assuming so

Youd be better off using an older kernel version, I use 3.2.27 but the tbs tree is based off of v3.0 so you may want to even go older.

The precompiled libs are frustrating, any changes to specific structs causes issues like paging faults. Have you made any changes to the stock tbs tree ? if you do you'll find your results hit and miss. Not sure entirely what these precompiled libs are for. I know they control the lnb voltage, that part was easy to get working without the libs. But they also do something else, without the libs all frontend ioctls work, but not demux ioctls. No packets are ever returned.
TBS6925/5980, Prof 7301/7500/8000, Genpix Skywalker-1, Skystar 2 Express HD
Hauppauge 950Q, Kworld 330U/435v3/445v3
Dreambox 800

I use Linux and support open source projects.
User avatar
updatelee
 
Posts: 374
Joined: Wed Jul 25, 2012 11:48 am
Location: CFB Edmonton

Re: Driver issue using kernel 3.6.2

Postby keybits » Mon Nov 12, 2012 7:45 pm

Yes, it's using the oject files included with the Driver package (tbsfe.o and tbs6980fe.o in this case). In the end, I was able to link them, and they work. I'll try Kernel 3.6.6 next, but I guess that won't be the Problem anyway.

I didn't make changes to the tbs tree, instead I adopted the diffs between the tbs tree and the kernel tree into the kernel tree. Works great, despite of the page faults I got in the dmesg I posted here, which ideed reflect exactly what you experienced, too: the demux seems to be the troublemaker.

I wonder if a directory compare of the original 5.3 LMI-API tree against the tbs tree can help?
keybits
 
Posts: 7
Joined: Thu Nov 01, 2012 3:32 pm

Next

Return to Linux

Who is online

Users browsing this forum: No registered users and 0 guests