On Sat, 18 Oct 2003, Prashant wrote: > Hi > I am getting an error while using a webcam on linux on mini itx Via Epia 800 > motherboard. The camera starts all right. But if you make the computer do > some > processing work when the camera feed is on, the driver crashes. The camera > works fine for a long time if you do not disturb the computer. If you move > another window over the camera preview window or do some graphical intensive > work then the camera crashes. The usb driver of the kernel (usb-uhci or > uhci) gives a EILSEQ error which corresponds to CRC or a timeout error. > > > I have tried it with 2 machines of same configuration (EPIA 800) and 3 > different cameras (logitech zoom, labtec webcam and hawkings) with 3 > applications (xawtv, gnome meeting and a custom application) and 3 drivers > (pwc,ov511 and quickcam). I have tried using different > versions of kernels (2.4.20, 2.4.22 and 2.6-test5). I also tested it with > uhci and usb-uhci. The applications, drivers and cameras work fine with > other systems (epia m10000, asus a7v333 with athlon xp 2100). The camera > works fine with windows on epia 800. But I require the camera to work on > Linux. > > We tested the logitech camera with pwc.o driver module, labtec one > with quickcam driver (http://qce-ga.sourceforge.net/) and Hawking camera > with ov511.o driver module. We tried on kernels 2.4.20, 2.4.22 and > 2.6-test5. > > pwc driver crashes with CRC/timeout errors. Other drivers are more graceful > when the error > occurs. They allow restarting the camera without restarting the system. > Restarting the camera > allows the camera to run for sometime before it starts receiving the error. > > Since the problem could not be traced to hardware problem (bad chip or > cabling - we tried with > 2 systems of same configuration with no success) or the driver or camera, > the problem probably > lies with usb-core or usb-uhci. I tried debugging usb-uhci.c with ov511 > camera driver. > Here are the my observations: > > 1. The first error was detected in process_iso. The error is detected in the > section where it is checked to see if there are any TDs that are not > completed but the last TD has completed. I found out that the first time \ > the camera is used this error is detected. > > 2. After this TDs appear with CRC/Timeout errors. Sometimes there are valid > TDs in between corrupt ones but generally once CRC errors start they are > flagged for all subsequent TDs. > > 3. Some TDs also have data buffer error flag set (i.e only data buffer error > flag and no CRC flag).
There are two things you could do to help tracking down this problem. First, try running with an OHCI controller, if you can get hold of one. That would definitely indicate whether this is a problem with the UHCI driver. Second, try debugging the 2.6.0 version of uhci-hcd.c rather than the 2.4 version. Fixes for things like this are generally applied to the more advanced kernel for testing and afterward adopted into the older stable branch. Alan Stern ------------------------------------------------------- This SF.net email sponsored by: Enterprise Linux Forum Conference & Expo The Event For Linux Datacenter Solutions & Strategies in The Enterprise Linux in the Boardroom; in the Front Office; & in the Server Room http://www.enterpriselinuxforum.com _______________________________________________ [EMAIL PROTECTED] To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel
