Request for help with adding a driver to build os852

Mikus Grinbergs mikus at bga.com
Wed Sep 29 11:46:54 EDT 2010


I need to add two drivers for external USB devices to os852.

I believe that creating a complete build from scratch for the XO-1,
which includes the drivers I want, ought to work -- but I'm intimidated
at jumping into git and kernel-building, just for a couple of drivers.
[Besides, I don't want to be in the business of build maintenance.]


So far, I'm trying to see if I can compile those drivers from source --
but I'm having a HUGE struggle with the deficiencies of XO-1 package
kernel-devel-2.6.31_xo1-20100823.1641.1.olpc.12d64069981699a.i586
(it's missing header directories:  'arch/x86/include', 'include/trace',
and 'include/asm-x86').


But even when I've managed to compile the most recently available driver
source and gotten an output module, 'modprobe' gives me "unknown symbol"
errors, like the following (as logged in dmesg):
 [139115.158397] uvcvideo: disagrees about version of symbol
v4l_compat_translate_ioctl
 [139115.158424] uvcvideo: Unknown symbol v4l_compat_translate_ioctl
 [139115.163353] uvcvideo: disagrees about version of symbol video_devdata
 [139115.163377] uvcvideo: Unknown symbol video_devdata
 [139115.168912] uvcvideo: disagrees about version of symbol
video_unregister_device
 [139115.168932] uvcvideo: Unknown symbol video_unregister_device
 [139115.170160] uvcvideo: disagrees about version of symbol
video_device_alloc
 [139115.170160] uvcvideo: Unknown symbol video_device_alloc
 [139115.170160] uvcvideo: disagrees about version of symbol
video_register_device
 [139115.170160] uvcvideo: Unknown symbol video_register_device
 [139115.170160] uvcvideo: disagrees about version of symbol video_usercopy
 [139115.170160] uvcvideo: Unknown symbol video_usercopy
 [139115.170160] uvcvideo: disagrees about version of symbol
video_device_release
 [139115.170160] uvcvideo: Unknown symbol video_device_release

And if I try to import the driver from (for instance)
kernel-2.6.31.9-174.fc12.i686.rpm (the driver is in Fedora builds) into
kernel-2.6.31_xo1-20100823.1641.1.olpc.12d64069981699a.i586 (the driver
is NOT in olpc builds) - I get "Invalid module format" from the os852
modprobe, even if I invoke it with 'modprobe --force'.


I'm asking that someone please tell me which Fedora kernel package comes
closest to the XO-1 os852 kernel package - so I can go exploring for
differences.  I also suspect that the driver source code I used is not
the same as the driver source code Fedora used -- do I have to look in
Fedoraproject git for the driver source code to try to compile ?


Thanks - help would be greatly appreciated,  mikus




More information about the Devel mailing list