Hi Charlie,

On Tuesday 15 April 2008, Charlie Wyse wrote:
> Greetings,
>
> I'm working with RedHat to get the uvcvideo module in the kernel. We are
> having some success with RHEL4.4 - RHEL5.1 However with the new kernel
> in RHEL5.2 Currently around 2.6.18-86 and counting I am running into a
> usb_endpoint issue. There seems to be a conflict with the
> /include/linux/usb.h file in the kernel devel. I guess my question is
> simply, is this an issue I should report to the kernel maintainers as a
> conflict with use of the usb_endpoints. Or is this something uvcvideo
> should take into account with newer kernels in RHEL?
>
> Building USB Video Class driver...
> make[1]: Entering directory `/usr/src/kernels/2.6.18-86.el5-xen-x86_64'
> CC [M] /home/cwyse/UVC/uvc_driver.o
> In file included from /home/cwyse/UVC/uvcvideo.h:8,
> from /home/cwyse/UVC/uvc_driver.c:45:
> /home/cwyse/UVC/uvc_compat.h:265: error: redefinition of
> ‘usb_endpoint_dir_in’
> include/linux/usb.h:474: error: previous definition of
> ‘usb_endpoint_dir_in’ was here
> /home/cwyse/UVC/uvc_compat.h:270: error: redefinition of
> ‘usb_endpoint_xfer_int’
> include/linux/usb.h:521: error: previous definition of
> ‘usb_endpoint_xfer_int’ was here
> /home/cwyse/UVC/uvc_compat.h:276: error: redefinition of
> ‘usb_endpoint_xfer_isoc’
> include/linux/usb.h:534: error: previous definition of
> ‘usb_endpoint_xfer_isoc’ was here
> /home/cwyse/UVC/uvc_compat.h:282: error: redefinition of
> ‘usb_endpoint_xfer_bulk’
> include/linux/usb.h:496: error: previous definition of
> ‘usb_endpoint_xfer_bulk’ was here
> /home/cwyse/UVC/uvc_compat.h:288: error: redefinition of
> ‘usb_endpoint_is_int_in’
> include/linux/usb.h:571: error: previous definition of
> ‘usb_endpoint_is_int_in’ was here
> make[2]: *** [/home/cwyse/UVC/uvc_driver.o] Error 1
> make[1]: *** [_module_/home/cwyse/UVC] Error 2
> make[1]: Leaving directory `/usr/src/kernels/2.6.18-86.el5-xen-x86_64'
> make: *** [uvcvideo] Error 2

To make the Linux UVC driver compilable against all kernel versions starting 
at 2.6.15, the source code uses conditional compilation directives based on 
the kernel version number.

RHEL ships patched kernels with new features without incrementing the version 
number. The uvcvideo driver gets confused and won't compile.

To fix this, you should edit uvc_compat.h and remove redundant 
function/variables/macros definitions.

Best regards,

Laurent Pinchart
_______________________________________________
Linux-uvc-devel mailing list
[email protected]
https://lists.berlios.de/mailman/listinfo/linux-uvc-devel

Reply via email to