Hi Jonathan,

On Wednesday 10 December 2008, Jonathan Roberts wrote:
> All,
>
> I have UVC (the latest version in SVN)

The SVN repository is outdated, you might consider upgrading to the version 
available in the Mercurial repository.

> running on a TI OMAP3 EVM with a Quickcam Pro 9000 camera. Everything seems
> to work as expected when capturing MJPEG (All supported resolutions) or low
> (QVGA or lower) resolution YUYV video. However if I try and capture YUYV at
> 640x480 then I get the following error message:
>
>       uvcvideo: Failed to submit URB 0 (-90)
>       VIDIOC_STREAMON error 90, Message too long.
>
> As far as I can see this this message is being raised by the core USB driver
> in usb_submit_urb() (urb.c). Is this a known problem? I really need to get
> 640x480 support working so any help would be appreciated.

-90 (-EMSGSIZE) can mean the following:

(a) endpoint maxpacket size is zero; it is not usable in the current interface 
altsetting.
(b) ISO packet is larger than the endpoint maxpacket.
(c) requested data transfer length is invalid: negative or too large for the 
host controller.

I'd vote for (c). Are you using the MUSB driver ? It doesn't support high 
bandwidth yet (see musb_urb_enqueue in drivers/usb/musb/musb_host.c, line 
1805 in 2.6.27).

There's not much I can that about that. High bandwidth support must be added 
to the MUSB driver. A possible workaround would be to use MJPEG at 640x480.

Best regards,

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

Reply via email to