Hi Laurent,
Laurent Pinchart wrote:
2.6.10 is indeed quite old, and definitely unsupported by the Linux UVC
driver. You might be able to make it work, but I can't guarantee anything.
OK, I'll try and make it work. I understand when you say such an old
kernel is unsupported, but I will continue to ask questions as I address
problems if I may.
The first problem appears to be that I have another definition of
kzalloc, so I guess I could just remove the one in uvc_driver.c ?
This is strange, as kzalloc has been introduced in 2.6.14. Are you using a
patched version of the 2.6.10 kernel ?
Yes, I am. It's the Texas Instruments version of the Monta Visyta
distribution. I have previoulsy had a patched version of uvc svn 148
that worked with one web cam, but I have had little success with others.
I want to try and move to the latest svn to be able to support a better
range of cameras.
If the kzalloc implementation in your kernel sources is compatible with what
the Linux UVC driver expects it should be safe to remove it from
uvc_compat.h.
It looks like that is the case.
My next issue was that back in 2.6.10 'struct usb_device' defined in
linux/usb.h does not have a field named 'product'. It seemed harmless to
me to simply remove the use of that field.
The final issue I saw in uvc_driver.c is unknown type for pm_message_t
used as a parameter in uvc_suspend(). As the parameter isn't used I just
#defined it as u32.
So now I have moced on to uvc_status.c where I get the following errors:
[EMAIL PROTECTED]:~/fp/ext/lib/driver/linux/webcam/uvc$ make
CROSS_COMPILE=arm_v5t_le- uvcvideo
Building USB Video Class driver...
make[1]: Entering directory
`/home/guest/fp/ext/lib/kernel/linux/montavista/lsp/ti-davinci'
CC [M] /home/guest/fp/ext/lib/driver/linux/webcam/uvc/uvc_driver.o
CC [M] /home/guest/fp/ext/lib/driver/linux/webcam/uvc/uvc_status.o
/home/guest/fp/ext/lib/driver/linux/webcam/uvc/uvc_status.c:19:29:
linux/usb_input.h: No such file or directory
/home/guest/fp/ext/lib/driver/linux/webcam/uvc/uvc_status.c: In function
`uvc_input_init':
/home/guest/fp/ext/lib/driver/linux/webcam/uvc/uvc_status.c:36: warning:
implicit declaration of function `input_allocate_device'
/home/guest/fp/ext/lib/driver/linux/webcam/uvc/uvc_status.c:36: warning:
assignment makes pointer from integer without a cast
/home/guest/fp/ext/lib/driver/linux/webcam/uvc/uvc_status.c:50: warning:
implicit declaration of function `usb_to_input_id'
/home/guest/fp/ext/lib/driver/linux/webcam/uvc/uvc_status.c:54: error:
structure has no member named `cdev'
/home/guest/fp/ext/lib/driver/linux/webcam/uvc/uvc_status.c:60: error:
void value not ignored as it ought to be
/home/guest/fp/ext/lib/driver/linux/webcam/uvc/uvc_status.c:67: warning:
implicit declaration of function `input_free_device'
make[2]: ***
[/home/guest/fp/ext/lib/driver/linux/webcam/uvc/uvc_status.o] Error 1
make[1]: *** [_module_/home/guest/fp/ext/lib/driver/linux/webcam/uvc]
Error 2
make[1]: Leaving directory
`/home/guest/fp/ext/lib/kernel/linux/montavista/lsp/ti-davinci'
make: *** [uvcvideo] Error 2
I have neither <linux/usb_input.h> nor implementations of
input_allocate_device(), usb_to_input() or input_free_device(). What is
the purpose of these functions and do you think it would be posible to
provide local implementations?
Thanks in advance for any suggestions.
Darren
_______________________________________________
Linux-uvc-devel mailing list
[email protected]
https://lists.berlios.de/mailman/listinfo/linux-uvc-devel