LinuxQuestions.org
Welcome to the most active Linux Forum on the web.
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Hardware
User Name
Password
Linux - Hardware This forum is for Hardware issues.
Having trouble installing a piece of hardware? Want to know if that peripheral is compatible with Linux?

Notices


Reply
  Search this Thread
Old 10-30-2011, 11:43 AM   #1
sergio.otero
LQ Newbie
 
Registered: Oct 2011
Posts: 4

Rep: Reputation: Disabled
LinuxTV driver for Pinnacle PCTV200e does not work since Ubuntu 11.10


Hi

I've been downloading the unofficial driver for "Pinnacle PCTV200e" from linuxtv.org since Ubuntu 9, and it has always worked perfectly.

This hardware is a DVB USB Tuner with a subsystem ID of 2304:020e

I've recently upgraded to Ubuntu 11.10 (kernel 3.0.0.0-12) and i haven't been able to make it work.

I've compiled the module, installed it to the kernel and it appears as loaded in lsmod and with traces in dmesg


lsmod:

Quote:
pctv200e 22529 0
dvb_usb 24444 1 pctv200e
usbhid 47198 0
dvb_core 110616 1 dvb_usb
rc_core 26963 7 ir_lirc_codec,ir_sony_decoder,ir_jvc_decoder,ir_rc6_decoder,ir_rc5_decoder,ir_nec_decoder,dvb_usb
wmi 19256 1 asus_wmi
i2c_algo_bit 13423 1 i915
hid 95463 1 usbhid
dmesg:

Quote:
[ 0.547553] usbcore: registered new interface driver usbfs
[ 0.547559] usbcore: registered new interface driver hub
[ 0.547572] usbcore: registered new device driver usb
[ 7.927870] usbcore: registered new interface driver usbhid
[ 7.927871] usbhid: USB HID core driver
[ 7.929161] usbcore: registered new interface driver dvb_usb_pctv200e
[ 7.929163] pctv200e: usb_register successfull.
Problem is that /dev/dvb directories does not appear.
I haven't seen any error.

I would appreciate any indication on where to look for an error or what to test.

It could be a problem with udev, but i'm not an expert on it.

In this linuxtv page it says (http://linuxtv.org/wiki/index.php/Ho...Device_Drivers)

Quote:
If the Modules load correctly
1. They should be listed in /proc/modules
2. They should provide some indication within your system log
3. The device manager udev will "automagically" create appropriate device nodes on /dev:
(a) For a DVB device, you should now have a non-empty /dev/dvb directory.
Thanks.

Sergio
 
Old 10-31-2011, 05:18 AM   #2
sergio.otero
LQ Newbie
 
Registered: Oct 2011
Posts: 4

Original Poster
Rep: Reputation: Disabled
First compilations did not work because the unofficial driver did not compile with the latest git repository from linuxtv, so i did a few changes.

Mainly, a structure had a pointer and now is a list. I looked at some of the official drivers, and they all seem to use the first ocurrence (change ->fe to ->fe_adapt[0].fe

I think that these changes and some constants were not effective in ".c" files compiled before solving these minor problems.

A "make clean", "make" and "sudo make install" has half solved the problem.

Now i have the /dev/dvb subdirectories, but there's an error in dmesg and the driver does not fully load.

I will try to locate the problem.

Thanks anyway.

Quote:
[ 44.058684] pctv200e: attaching and initializing mt352 frontend.
[ 44.258418] pctv200e: PCTV200e initialized mt352
[ 44.292622] pctv200e: mt352 frontend attached.
[ 44.292628] DVB: registering adapter 0 frontend 0 (Zarlink MT352 DVB-T)...
[ 44.318339] MT2060: successfully identified (IF1 = 1220)
[ 45.444843] pctv200e: tuner mt2060 attached.
[ 45.444847] pctv200e: tuner mt2060 set_params starting.
[ 45.444856] BUG: unable to handle kernel NULL pointer dereference at 0000000000000008
[ 45.444910] IP: [<ffffffffa02a2184>] pctv200e_tuner_attach+0x84/0x120 [dvb_usb_pctv200e]
[ 45.444950] PGD 11ce50067 PUD 11eb25067 PMD 0
[ 45.444968] Oops: 0002 [#1] SMP
[ 45.444982] CPU 1
[ 45.444989] Modules linked in: mt2060 ir_lirc_codec lirc_dev ir_mce_kbd_decoder ir_sony_decoder ir_jvc_decoder mt352 ir_rc6_decoder ir_rc5_decoder dvb_usb_pctv200e(+) dvb_usb ir_nec_decoder dvb_core rc_core usbhid hid bnep rfcomm bluetooth binfmt_misc snd_hda_codec_hdmi snd_hda_codec_realtek ppdev eeepc_wmi asus_wmi sparse_keymap snd_hda_intel snd_hda_codec snd_hwdep snd_pcm parport_pc snd_seq_midi snd_rawmidi snd_seq_midi_event snd_seq snd_timer snd_seq_device wmi snd mei(C) lm75 i915 soundcore snd_page_alloc coretemp drm_kms_helper drm i2c_algo_bit video lp parport xhci_hcd pata_via r8169
[ 45.445190]
[ 45.445197] Pid: 1473, comm: modprobe Tainted: G C 3.0.0-12-generic #20-Ubuntu System manufacturer System Product Name/P8H67-M PRO
[ 45.445233] RIP: 0010:[<ffffffffa02a2184>] [<ffffffffa02a2184>] pctv200e_tuner_attach+0x84/0x120 [dvb_usb_pctv200e]
[ 45.445264] RSP: 0018:ffff8801255cfc08 EFLAGS: 00010292
[ 45.445278] RAX: ffffffffa03292a0 RBX: ffff880125e69178 RCX: 000000000003ffff
[ 45.445298] RDX: 0000000000000000 RSI: 0000000000000082 RDI: ffffffffa02a4228
[ 45.445316] RBP: ffff8801255cfc18 R08: 000000000000000a R09: 0000000000000000
[ 45.445336] R10: 0000000000000000 R11: 0000000000000000 R12: 0000000000000000
[ 45.445354] R13: 0000000000000000 R14: ffff880125e69178 R15: ffff880125e69250
[ 45.445374] FS: 00007fccb01f9720(0000) GS:ffff88013fa80000(0000) knlGS:0000000000000000
[ 45.445395] CS: 0010 DS: 0000 ES: 0000 CR0: 000000008005003b
[ 45.445411] CR2: 0000000000000008 CR3: 000000011f5f3000 CR4: 00000000000406e0
[ 45.445430] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
[ 45.445450] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
[ 45.445469] Process modprobe (pid: 1473, threadinfo ffff8801255ce000, task ffff8801337bdc80)
[ 45.445491] Stack:
[ 45.445498] ffff880125e69178 ffff880125e69178 ffff8801255cfc58 ffffffffa0213cf8
[ 45.445522] ffff8801255cfc58 0000000000000000 ffff880125e68000 ffff880125e69178
[ 45.445546] 0000000000000001 ffff880125e692e0 ffff8801255cfce8 ffffffffa0212c79
[ 45.445570] Call Trace:
[ 45.445581] [<ffffffffa0213cf8>] dvb_usb_adapter_frontend_init+0xc8/0x1b0 [dvb_usb]
[ 45.445602] [<ffffffffa0212c79>] dvb_usb_device_init+0x5a9/0x850 [dvb_usb]
[ 45.445622] [<ffffffffa02a20dc>] pctv200e_probe+0x2c/0x50 [dvb_usb_pctv200e]
[ 45.445644] [<ffffffff814506c3>] usb_probe_interface+0xd3/0x1e0
[ 45.445661] [<ffffffff813ce4e8>] really_probe+0x68/0x190
[ 45.445677] [<ffffffff813ce775>] driver_probe_device+0x45/0x70
[ 45.445694] [<ffffffff813ce84b>] __driver_attach+0xab/0xb0
[ 45.445710] [<ffffffff813ce7a0>] ? driver_probe_device+0x70/0x70
[ 45.445727] [<ffffffff813ce7a0>] ? driver_probe_device+0x70/0x70
[ 45.445744] [<ffffffff813cd5dc>] bus_for_each_dev+0x5c/0x90
[ 45.445760] [<ffffffff813ce2ae>] driver_attach+0x1e/0x20
[ 45.445775] [<ffffffff813cdf00>] bus_add_driver+0x1a0/0x270
[ 45.445791] [<ffffffff813cedb6>] driver_register+0x76/0x140
[ 45.445809] [<ffffffff8144f541>] usb_register_driver+0xa1/0x190
[ 45.445827] [<ffffffffa0019000>] ? 0xffffffffa0018fff
[ 45.445842] [<ffffffffa0019020>] pctv200e_module_init+0x20/0x1000 [dvb_usb_pctv200e]
[ 45.445865] [<ffffffff81002042>] do_one_initcall+0x42/0x180
[ 45.445883] [<ffffffff8109ff2e>] sys_init_module+0xbe/0x230
[ 45.445902] [<ffffffff815f22c2>] system_call_fastpath+0x16/0x1b
[ 45.445918] Code: a0 31 c0 e8 36 19 33 e1 48 c7 c7 f8 41 2a a0 31 c0 e8 28 19 33 e1 48 8b 83 88 05 00 00 48 c7 c7 28 42 2a a0 48 8b 80 30 02 00 00
[ 45.446013] 89 44 24 08 48 8b 83 88 05 00 00 48 c7 80 30 02 00 00 40 20
[ 45.446061] RIP [<ffffffffa02a2184>] pctv200e_tuner_attach+0x84/0x120 [dvb_usb_pctv200e]
[ 45.446086] RSP <ffff8801255cfc08>
[ 45.446095] CR2: 0000000000000008
[ 45.506053] ---[ end trace 5b2e1fbf3b5050f3 ]---
[ 172.192542] [drm:drm_mode_getfb] *ERROR* invalid framebuffer id
 
Old 10-31-2011, 09:19 AM   #3
sergio.otero
LQ Newbie
 
Registered: Oct 2011
Posts: 4

Original Poster
Rep: Reputation: Disabled
I've managed to make it work :-)

As I said before, in the previous version there was only 1 adapter in the "dvb_usb_adapter" struct, but now it's an array

The original code did not compile, so i changed "adap->fe" to "adap->fe_adap[0].fe" and it compiled (other official drivers have the same approach)
The problem was that this code compiled, but "adap->priv" was null. I've change it from "adap->priv" to "adap->fe_adap[0].priv" and now works perfectly.

I will try to submit the new pctv200e.c to linuxtv.
 
Old 12-09-2011, 02:30 PM   #4
Naki78
LQ Newbie
 
Registered: Dec 2011
Posts: 1

Rep: Reputation: Disabled
trouble with pctv200e driver

Hi Sergio, I'm not able to use this driver after compiling with 3.0.0-14-generic and 3.0.0 source kernel.

The message after modprobe is:

FATAL: Error inserting dvb_usb_pctv200e (/lib/modules/3.0.0-14-generic/kernel/drivers/media/dvb/dvb-usb/dvb-usb-pctv200e.ko): Invalid module format

Please help!!!

thank you
 
Old 12-11-2011, 01:04 PM   #5
sergio.otero
LQ Newbie
 
Registered: Oct 2011
Posts: 4

Original Poster
Rep: Reputation: Disabled
Hi

I'm not an expert, but try this:

sudo make rminstall
make clean
make release
make
sudo make install
 
  


Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
Mandriva driver needed for Pinnacle DVC 90 baloo2 Linux - Newbie 1 12-30-2008 09:14 AM
Pinnacle 40i tv card: how to get sound to work? Kropotkin Linux - Hardware 0 07-13-2006 04:30 PM
pinnacle tv infra red control driver 44179 SUSE / openSUSE 1 03-16-2005 06:54 AM
Impossibility to use a Pinnacle DC10+ and a Pinnacle PCTV Pro at the same time vaisarger Linux - Hardware 1 08-27-2004 04:56 AM
Pinnacle PCTV Plus Linux Driver maverick906 Linux - Hardware 1 09-21-2003 07:48 AM

LinuxQuestions.org > Forums > Linux Forums > Linux - Hardware

All times are GMT -5. The time now is 06:30 PM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration