Hi Lambros, On Wednesday 12 December 2007, Lambros Lambrou wrote: > Dear all, > > I have a Dell Inspiron 1720 laptop, running Ubuntu 7.10, x86_64. The > webcam, according to 'lsusb' is: > > 05a9:2640 OmniVision Technologies, Inc. > > My problem is, the webcam appears to work fine for about 1 minute, and > then the picture freezes. I have tested this using Ekiga, skype (beta > version 2.0.0.27), luvcview and gstreamer-properties. In all > applications except Ekiga, the camera functions for about 1 minute then > the picture is frozen, until I restart the test, when the camera runs > for a further 1 minute.. ad nauseam. With Ekiga, all tests seem to run > fine, until I attempt an actual VoIP call with a real person, when the > video and sound are garbled, and the application becomes generally > unstable, with random segfaults (see > https://bugs.launchpad.net/ubuntu/+source/ekiga/+bug/164942 ). > > I have tried the latest uvcvideo driver from the SVN trunk (revision > 151) but the behaviour is no different. I have also tried various > patches that I found, with no luck (either the patches failed to apply, > or there was no difference in behaviour). > > Whenever the problem occurs, I always get this in my 'dmesg' output: > [ 6045.133998] uvcvideo: Failed to resubmit video URB (-45). > [ 6045.134047] uvcvideo: Failed to resubmit video URB (-45). > [ 6045.134088] uvcvideo: Failed to resubmit video URB (-45). > [ 6045.134131] uvcvideo: Failed to resubmit video URB (-45).
I don't like that :-( > I get the same diagnostics if I use 'trace=15' when loading the module - > it doesn't seem to give any more information (I use the command 'sudo > modprobe uvcvideo trace=15'). Would I need to configure > 'CONFIG_USB_DEBUG=y' to get more helpful debug information? Would I > need to recompile the Ubuntu kernel to do this? I don't think CONFIG_USB_DEBUG would help, except maybe by slowing the kernel down a bit. You will have to recompile the Ubuntu kernel, or at least the USB modules if the USB subsystem is built as a module. > I notice that the problem is not permanent. In Skype, I can simply stop > and start my video to get the camera running for another minute or so. > Is there some way I could modify the driver to automatically reset the > device when this error-condition occurs? Obviously this wouldn't be a > proper solution, but it would meet my needs. > > I have tried modifying the driver, to resubmit the video URB when the > particular error-code "-45" is returned. This does not help - it simply > fails again with the same error code. Was worth a shot as a workaround. > From looking around the 'net, it appears that -45 refers to -EL2NSYNC, > which is reportedly only used by ehci_hcd, and is perhaps audio-related. > I disabled my audio driver "snd_hda_intel", but this did not help. EL2NSYNC is returned by the EHCI HCD driver when it has trouble scheduling an isochronous URB. I'm not sure if this is caused by a wrong behaviour of the uvcvideo driver or by a bug in the ehci_hcd driver itself. > Would it be helpful for me to try the 32-bit version of Ubuntu instead > of the 64-bit version? I don't want to try this if it would be wasted > effort. I doubt it would help, but that's always worth a shot if everything else fails. > I did some searching on the "OmniVision" webcam but I could find very > little information. By all accounts, this camera is supposed to work > perfectly with Free Software (but sadly, not for me). It is built into > the screen of my laptop, so I really would like to get it working, > instead of just buying another cheap webcam to plug into the side. > > Any help debugging this would be much appreciated. Please let me know > what further info would be useful. I would start by trying a vanilla kernel instead of the Ubuntu kernel. Ubuntu might ship patches that affect the ehci scheduler. If it still fails, we should raise the problem on the linux-usb mailing list to find out who is to blame. I don't have enough knowledge of the ehci driver to understand its scheduling policy. Best regards, Laurent Pinchart _______________________________________________ Linux-uvc-devel mailing list [email protected] https://lists.berlios.de/mailman/listinfo/linux-uvc-devel
