Summary: | media-video/linux-uvc-0.1.0_pre250 / kernel-2.6.28 - linux-uvc-0.1.0_pre250/uvc_v4l2.c:989: error: too many arguments to function ‘v4l_compat_translate_ioctl’ | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Paul Philippov <themactep> |
Component: | Current packages | Assignee: | No maintainer - Look at https://wiki.gentoo.org/wiki/Project:Proxy_Maintainers if you want to take care of it <maintainer-needed> |
Status: | RESOLVED WONTFIX | ||
Severity: | normal | CC: | easycat, thomas.pani, xhamulnazgul |
Priority: | High | ||
Version: | unspecified | ||
Hardware: | AMD64 | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- |
Description
Paul Philippov
2008-12-26 02:02:35 UTC
UVC is in mainline kernel since 2.6.26 (CONFIG_USB_VIDEO_CLASS) I have the same problem. And the uvc in the kernel doesn't work with my isight webcam, that why I use the uvc from portage. (In reply to comment #2) > And the uvc in the kernel doesn't work with my isight webcam, that why I use > the uvc from portage. That's strange, the isight driver itself hasn't been modified since 8 months. here is the patch to uvc_v4l2.c: - if ((ret = v4l_compat_translate_ioctl(inode, file, cmd, arg, - uvc_v4l2_do_ioctl)) == -ENOIOCTLCMD) + if ((ret = v4l_compat_translate_ioctl(file, cmd, arg, + __uvc_v4l2_do_ioctl)) == -ENOIOCTLCMD) uvc_trace(UVC_TRACE_IOCTL, "Unknown ioctl 0x%08x\n", cmd); Excuse me ^^'' I haven't tested it. There are some other patches to apply. Now my webcam works. Copy *c && *h from /usr/src/linux/drivers/media/video/uvc/ to /var/tmp/portage/media-video/linux-uvc-0.1.0_pre250/work/ and run make && make install. This package doesn't have an active maintainer and is not in the stable tree. If there is a driver in the kernel which looks like it supports your device but it doesn't work then you are advised to file a kernel bug. (In reply to comment #6) > This package doesn't have an active maintainer and is not in the stable tree. > > If there is a driver in the kernel which looks like it supports your device but > it doesn't work then you are advised to file a kernel bug. > uvc from 2.6.28 sources works perfectly on my dell vostro 1310. (In reply to comment #7) > (In reply to comment #6) > > This package doesn't have an active maintainer and is not in the stable tree. > > > > If there is a driver in the kernel which looks like it supports your device but > > it doesn't work then you are advised to file a kernel bug. > > > > uvc from 2.6.28 sources works perfectly on my dell vostro 1310. > To me they aren't working, before reding here i was always including them in the kernel AND installing them form portage.. on my amd64 box i have a Logitech ultra vision webcam, that used to work and now with only the kernel driver it doesn't i'm using 2.6.28-r1 as kernel in the next days i'm going to try the new r2(In reply to comment #7) > (In reply to comment #6) > > This package doesn't have an active maintainer and is not in the stable tree. > > > > If there is a driver in the kernel which looks like it supports your device but > > it doesn't work then you are advised to file a kernel bug. > > > > uvc from 2.6.28 sources works perfectly on my dell vostro 1310. > I'm using kernel 2.6.28-r1, and the kernel driver doesn't work for my Logitech vision Ultra, that used to function before with the portage drivers. installing the drivers i got the same error reported in this bug. Send a bug report to bugzilla.kernel.org then I've just upgraded to kernel 2.6.28-r2, and now it works. (in the meanwhile i've also recompiled ati-drivers if that can matter.) I have the same problem on ~x86:
[32;01m*[0m Determining the location of the kernel source code
[32;01m*[0m Found kernel source directory:
[32;01m*[0m /usr/src/linux
[32;01m*[0m Found kernel object directory:
[32;01m*[0m /lib/modules/2.6.28-gentoo-r2/build
[32;01m*[0m Found sources for kernel version:
[32;01m*[0m 2.6.28-gentoo-r2
[32;01m*[0m Checking for suitable kernel configuration options...
[A[149C [34;01m[ [32;01mok[34;01m ][0m
>>> Unpacking source...
>>> Unpacking linux-uvc-0.1.0_pre250.tar.bz2 to /var/tmp/portage/media-video/linux-uvc-0.1.0_pre250/work
>>> Source unpacked in /var/tmp/portage/media-video/linux-uvc-0.1.0_pre250/work
>>> Compiling source in /var/tmp/portage/media-video/linux-uvc-0.1.0_pre250/work/linux-uvc-0.1.0_pre250 ...
ln: creating symbolic link `Module.symvers': File exists
[32;01m*[0m Preparing uvcvideo module
make -j2 HOSTCC=i686-pc-linux-gnu-gcc CROSS_COMPILE=i686-pc-linux-gnu- LDFLAGS= KERNEL_DIR=/usr/src/linux
Building USB Video Class driver...
make[1]: Entering directory `/usr/src/linux-2.6.28-gentoo-r2'
make[1]: warning: jobserver unavailable: using -j1. Add `+' to parent make rule.
CC [M] /var/tmp/portage/media-video/linux-uvc-0.1.0_pre250/work/linux-uvc-0.1.0_pre250/uvc_driver.o
CC [M] /var/tmp/portage/media-video/linux-uvc-0.1.0_pre250/work/linux-uvc-0.1.0_pre250/uvc_queue.o
CC [M] /var/tmp/portage/media-video/linux-uvc-0.1.0_pre250/work/linux-uvc-0.1.0_pre250/uvc_v4l2.o
/var/tmp/portage/media-video/linux-uvc-0.1.0_pre250/work/linux-uvc-0.1.0_pre250/uvc_v4l2.c: In function 'uvc_v4l2_do_ioctl':
/var/tmp/portage/media-video/linux-uvc-0.1.0_pre250/work/linux-uvc-0.1.0_pre250/uvc_v4l2.c:989: warning: passing argument 1 of 'v4l_compat_translate_ioctl' from incompatible pointer type
/var/tmp/portage/media-video/linux-uvc-0.1.0_pre250/work/linux-uvc-0.1.0_pre250/uvc_v4l2.c:989: warning: passing argument 2 of 'v4l_compat_translate_ioctl' makes integer from pointer without a cast
/var/tmp/portage/media-video/linux-uvc-0.1.0_pre250/work/linux-uvc-0.1.0_pre250/uvc_v4l2.c:989: warning: passing argument 3 of 'v4l_compat_translate_ioctl' makes pointer from integer without a cast
/var/tmp/portage/media-video/linux-uvc-0.1.0_pre250/work/linux-uvc-0.1.0_pre250/uvc_v4l2.c:989: error: too many arguments to function 'v4l_compat_translate_ioctl'
make[2]: *** [/var/tmp/portage/media-video/linux-uvc-0.1.0_pre250/work/linux-uvc-0.1.0_pre250/uvc_v4l2.o] Error 1
make[1]: *** [_module_/var/tmp/portage/media-video/linux-uvc-0.1.0_pre250/work/linux-uvc-0.1.0_pre250] Error 2
make[1]: Leaving directory `/usr/src/linux-2.6.28-gentoo-r2'
make: *** [uvcvideo] Error 2
[31;01m*[0m
[31;01m*[0m ERROR: media-video/linux-uvc-0.1.0_pre250 failed.
[31;01m*[0m Call stack:
[31;01m*[0m ebuild.sh, line 49: Called src_compile
[31;01m*[0m environment, line 3174: Called linux-mod_src_compile
[31;01m*[0m environment, line 2433: Called die
[31;01m*[0m The specific snippet of code:
[31;01m*[0m eval "emake HOSTCC="$(tc-getBUILD_CC)" CROSS_COMPILE=${CHOST}- LDFLAGS="$(get_abi_LDFLAGS)" ${BUILD_FIXES} ${BUILD_PARAMS} ${BUILD_TARGETS} " || die "Unable to emake HOSTCC="$(tc-getBUILD_CC)" CROSS_COMPILE=${CHOST}- LDFLAGS="$(get_abi_LDFLAGS)" ${BUILD_FIXES} ${BUILD_PARAMS} ${BUILD_TARGETS}";
[31;01m*[0m The die message:
[31;01m*[0m Unable to emake HOSTCC=i686-pc-linux-gnu-gcc CROSS_COMPILE=i686-pc-linux-gnu- LDFLAGS= KERNEL_DIR=/usr/src/linux
[31;01m*[0m
[31;01m*[0m If you need support, post the topmost build error, and the call stack if relevant.
[31;01m*[0m A complete build log is located at '/var/tmp/portage/media-video/linux-uvc-0.1.0_pre250/temp/build.log'.
[31;01m*[0m The ebuild environment file is located at '/var/tmp/portage/media-video/linux-uvc-0.1.0_pre250/temp/environment'.
[31;01m*[0m
I have it Video 4 Linux compiled as a module, because it didn't allow me to compile it into the kernel. It only did [m]:
CONFIG_USB_VIDEO_CLASS=m
Any ideas?
I have the same problem. I am running the 2.6.28-r5 kernel and 4.3.2 GCC. I have verified that the package supports my webcam. I have looked over the build logs for the package and have come to the conclusion that the problem is somewhere within the tree. It acts as if there is a missing dependency(or at least a missing function call somewhere). Anyone else see that issue? * Messages for package media-video/linux-uvc-0.1.0_pre250: * * ERROR: media-video/linux-uvc-0.1.0_pre250 failed. * Call stack: * ebuild.sh, line 49: Called src_compile * environment, line 3393: Called linux-mod_src_compile * environment, line 2633: Called die * The specific snippet of code: * eval "emake HOSTCC=\"$(tc-getBUILD_CC)\" CROSS_COMPILE=${CHOST}- LDFLAGS=\"$(get_abi_LDFLAGS)\" ${BUILD_FIXES} ${BUILD_PARAMS} ${BUILD_TARGETS} " || die "Unable to emake HOSTCC="$(tc-getBUILD_CC)" CROSS_COMPILE=${CHOST}- LDFLAGS="$(get_abi_LDFLAGS)" ${BUILD_FIXES} ${BUILD_PARAMS} ${BUILD_TARGETS}"; * The die message: * Unable to emake HOSTCC=i686-pc-linux-gnu-gcc CROSS_COMPILE=i686-pc-linux-gnu- LDFLAGS= KERNEL_DIR=/usr/src/linux * * If you need support, post the topmost build error, and the call stack if relevant. * A complete build log is located at '/var/tmp/portage/media-video/linux-uvc-0.1.0_pre250/temp/build.log'. * The ebuild environment file is located at '/var/tmp/portage/media-video/linux-uvc-0.1.0_pre250/temp/environment'. Same problem on 2.6.31-gentoo-r4 #3 SMP with linux-uvc-0.1.0_pre250 (In reply to comment #11) > I have it Video 4 Linux compiled as a module, because it didn't allow me to > compile it into the kernel. It only did [m]: > > CONFIG_USB_VIDEO_CLASS=m > > Any ideas? > with CONFIG_USB_VIDEO_CLASS=m it should compile uvcvideo - I was able to modprobe uvcvideo after doing it and my webcam now works, I'm still unable to compile this package though. n: creating symbolic link `Module.symvers': File exists * Preparing uvcvideo module make -j5 HOSTCC=x86_64-pc-linux-gnu-gcc CROSS_COMPILE=x86_64-pc-linux-gnu- LDFLAGS= KERNEL_DIR=/usr/src/linux Building USB Video Class driver... make[1]: Entering directory `/usr/src/linux-2.6.30-gentoo-r5' make[1]: warning: jobserver unavailable: using -j1. Add `+' to parent make rule. CC [M] /var/tmp/portage/media-video/linux-uvc-0.1.0_pre250/work/linux-uvc-0.1.0_pre250/uvc_driver.o .... Similar errors as I have module built in kernel. Shouldn't there just be a build time USE flag to build tools and not the kernel module? How else am I supposed to get the uvc tools ? I don't know if my solution is also valid for your problem. I'm using the Logitec Webcam QuickCam. (lsusb: Bus 001 Device 002: ID 046d:09a1 Logitech, Inc. QuickCam Communicate MP/S5500). After updating o kernel version 2.6.31-gentoo-r6 it it stopped working. I had from previous configurations the gentoo-packet linux-uvc installed. Trying to reemerge the package (media-video/linux-uvc-0.1.0_pre250) the following error appeared: eval "emake HOSTCC=\"$(tc-getBUILD_CC)\" CROSS_COMPILE=${CHOST}- LDFLAGS=\"$(get_abi_LDFLAGS)\" ${BUILD_FIXES} ${BUILD_PARAMS} ${BUILD_TARGETS} " || die "Unable to emake HOSTCC="$(tc-getBUILD_CC)" CROSS_COMPILE=${CHOST}- LDFLAGS="$(get_abi_LDFLAGS)" ${BUILD_FIXES} ${BUILD_PARAMS} ${BUILD_TARGETS}"; * The die message: * Unable to emake HOSTCC=i686-pc-linux-gnu-gcc CROSS_COMPILE=i686-pc-linux-gnu- LDFLAGS= KERNEL_DIR=/usr/src/linux However, with my system it worked to unmerge linux-uvc and activate the following kernel items: Device Driver-> Multimedia support -> ‣ <M> Video For Linux • [*] Enable Video For Linux AP 1 compatible Layer ‣ [*] Video capture adapters • [*] Autoselect ... can this be deactivated? • [*] V4L USB devices ∘ <M> USB Viedo Class (UVC) ‣ [*] UVC input events device support Afterwards I could load the modules and the webcam worked fine.: modprobe videodev modprobe v4l1_compat modprobe v4l2_common modprobe uvcvideo *** Bug 305379 has been marked as a duplicate of this bug. *** Removed from tree. Use the in-kernel drivers. |