[pvrusb2] Compile issue
Mike Isely
isely at isely.net
Fri Dec 9 00:11:32 CST 2005
On Fri, 9 Dec 2005, cardboil wrote:
> I tried the 20051126 snapshot, but am getting same messages. Here is some
> info from /var/log/messages:
>
> <snip>
>
> Dec 9 09:34:47 192 kernel: usb 1-5: new high speed USB device using
> ehci_hcd and address 3
> Dec 9 09:34:49 192 kernel: Linux video capture interface: v1.00
> Dec 9 09:34:49 192 kernel: v4l1_compat: no version for
> "struct_module" found: kernel tainted.
> Dec 9 09:34:49 192 kernel: pvrusb2: disagrees about version of symbol
> tveeprom_hauppauge_analog
> Dec 9 09:34:49 192 kernel: pvrusb2: Unknown symbol tveeprom_hauppauge_analog
> Dec 9 09:34:49 192 modprobe: FATAL: Error inserting pvrusb2
> (/lib/modules/2.6.14-1.1644_FC4/kernel/drivers/pvrusb2/pvrusb2.ko):
> Unknown symbol in module, or unknown parameter (see dmesg)
> Dec 9 09:34:49 192 usb.agent[3393]: ... can't load module pvrusb2
> Dec 9 09:34:49 192 usb.agent[3393]: missing kernel or user mode driver pvrusb2
Still no clue about this, but see my other message for more info.
>> Here is the info you requested:
>>
>> Distro: FC4
>> Kernel: 2.6.14-1.1644_FC4
>> Arch: i686
>> ivtv installed version: ivtv.i386 1:0.4.0-98.rhfc4.at and ivtv-kmdl 1:
>> 0.4.0-98.rhfc4.at
>> Video4Linux: I did install v4l from rpm -- video4linux.i386 1:
>> 20051112-61.rhfc4.at and video4linux-kmdl-2.6.14-1.1644_FC4.i686 1:
>> 20051112-61.rhfc4.at
I think I understand where that 0x49 id came from now.
The current v4l-dvb CVS has the "new" saa7115 module in it (and therefore
so does 2.6.15-rcX kernels). If you patched up your 2.6.14.x kernel with
the latest V4L then you will have the new module. I've just checked the
CVS repository and the new module's driver ID is 73, or 0x49 in hex...
(The symbolic name is I2C_DRIVERID_SAA711X, in linux/i2c-id.h.) Now, the
pvrusb2 driver can detect and use this module, but the detection is only
compiled in if you build pvrusb2 against a 2.6.15 release candidate. You
built against 2.6.14.1 so it was disabled. Thus the chip driver attached
but the pvrusb2 driver failed to recognize it. I had to only enable it
for 2.6.15 because prior to that kernel, the symbol I2C_DRIVERID_SAA711X
didn't exist and so attempting to use it could cause a compilation error.
So, if you want to use that newer module, you can manually force the
driver to compile for it. Edit compat.h, read the comments, and edit
appropriately (it should be obvious).
In the mean time I see a better way to handle this - rather than
conditionalizing it against the version 2.6.15, I can instead just see if
I2C_DRIVERID_SAA711X is defined in the build and if so then enable the
detection. Duh.
-Mike
--
| Mike Isely | PGP fingerprint
Spammers Die!! | | 03 54 43 4D 75 E5 CC 92
| isely @ pobox (dot) com | 71 16 01 E2 B5 F5 C1 E8
| |
More information about the pvrusb2
mailing list