Hi Steve,

(CC'ing the linux-uvc-devel mailing list, as the information you wrote can be 
helpful for many people).

On Thursday 10 December 2009 16:21:21 saze...@aol.com wrote:
>  Laurent,
> 
> Thanks for the reply.  I sent the output of dmesg to Paulo and he observed
>  the camera was connected via a hub. Paulo suspected that the problem may
>  be caused by a defect in the way that Linux handles hubs. It turns out
>  that all of the USB ports on my laptop go through a hub. I switched to a
>  desktop and it worked!
> I am using Puppy Linux and I relayed the problem to the Puppy forum.
> One of the members off this advice on changing the uvcvideo driver to get
>  around the hub problem:
> 
> While compiling the 2.6.31.6 kernel, I noticedthis: in order to get true
>  usb2 speed through my (Intel ICH7) usbports, I must compile the usb2
>  driver ehci_hcd into the kernel, not asa module. Otherwise the usb1 driver
>  (uhci_hcd) grabs the hub'sinterrupts first and doesn't relinquish them to
>  ehci_hcd. Result:slooooww usb-port operation. I would speculate, too slow
>  for a webcam.
> 
> I would therefore suggest to the writers of Linux usb webcamdrivers that,
>  in order to obtain a meaningful probe for a usb2 hub, thewebcam driver
>  loader should look first at the output of lspci -k,before looking at
>  lsmod. If the webcam driver loader looks only atlsmod, it will miss the
>  case where the 2.6.31.6 (and, presumably, allearlier) kernel(s)
>  is/are/were compiled correctly for usb2 (i.e., withehci_hcd compiled
>  directly into the kernel, and uhci_hcd and ohci_hcdas modules).
> 
> If the kernel.org team ever makes the kernel do its ehci_hcd probebefore
>  its uhci_hcd probe, then a mere lsmod probe will suffice. Untilthat happy
>  day, I would venture to predict there will be muchfrustration in webcam
>  Linuxland, except among those who are savvyenough to add the necessary
>  lspci -k probing logic to the webcam driverloader ourselves
> 
> If your camera's driver loader *is* already written to look first atlspci
>  -k, then all you need in order for the webcam to work is torecompile the
>  kernel with ehci_hcd compiled directly into the kernel,the other two as
>  modules. Wuh-laww, now your ICH7 usb2 hub runs at itsintended speed and
>  your usb webcam (knock on wood) works.
> 
> Don't get carried away and compile usbhid into the kernel as well,though.
>  It works OK, but it confuses the Puppy shutdown script.
> 
> 
> Not sure how difficult it is to use lspci -k before lsmod but it might be
>  worth trying so that users with only hub terminated USB ports can use
>  uvcvideo.

Thanks a lot for the information. You forgot the "lsusb -v -d 046d:0804" 
output though ;-)

-- 
Regards,

Laurent Pinchart
_______________________________________________
Linux-uvc-devel mailing list
Linux-uvc-devel@lists.berlios.de
https://lists.berlios.de/mailman/listinfo/linux-uvc-devel

Reply via email to