Hi,

I also recently backported the UVC gadget (g_webcam) from 2.6.36 to
2.6.32.  Where did you encounter this error?  I'm able to load the
module and the DM365 is detected as a UVC device by a Windows host,
but then I am unable to add DirectShow filters to the device.  Perhaps
the root cause is similar?

Thanks,

Will Kelleher
Nuvixa, Inc.



On Fri, Feb 4, 2011 at 7:41 AM, jean-philippe francois
<[email protected]> wrote:
> 2011/2/4 B, Ravi <[email protected]>:
>>
>>> >> Hi,
>>> >>
>>> >> I have backported the UVC gadget patch by laurent pinchart on a custom
>>> >> DM365 board.
>>> >> It fails to allocate the required endpoints :
>>> >>
>>> >>       ep = usb_ep_autoconfig(cdev->gadget, &uvc_streaming_ep);
>>> >>       if (!ep) {
>>> >>               INFO(cdev, "Unable to allocate streaming EP\n");
>>> >>               goto error;
>>> >>       }
>>> >>
>>> >> I can see the message "Unable to allocate streaming EP" in the log.
>>> >> How can I debug / fix this ?
>>> >>
>>> >> The mass storage gadget is working fine.
>>> >>
>>> >> Here is the failing endpoint descriptor :
>>> >>
>>> >> static struct usb_endpoint_descriptor uvc_streaming_ep = {
>>> >>       .bLength                = USB_DT_ENDPOINT_SIZE,
>>> >>       .bDescriptorType        = USB_DT_ENDPOINT,
>>> >>       .bEndpointAddress       = USB_DIR_IN,
>>> >>       .bmAttributes           = USB_ENDPOINT_XFER_ISOC,
>>> >>       .wMaxPacketSize         = cpu_to_le16(1024),
>>> >>       .bInterval              = 1,
>>> >> };
>>> >>
>>> >
>>> > The above endpoint requires endpoint fifo size to be 1024. Check with
>>> the fifo table entries in musb_core.c file and update as per requirement.
>>> >
>>>
>>> So I can either change the fifo_mode module paramete to pick another
>>> config, or
>>> change the endpoint config to use a smaller packet size ?
>>>
>>
>> If the UVC driver requirement may be 1024 bytes packet size, then you cannot 
>> change, what you can do is change the current fifo-mode
>> configuration sizes as per your device requirements.
>>
>> For example :
>> /* mode 4 - fits in 4KB */
>> static struct musb_fifo_cfg __devinitdata mode_4_cfg[] = {
>> { .hw_ep_num =  1, .style = FIFO_TX,   .maxpacket = 512, },
>> { .hw_ep_num =  1, .style = FIFO_RX,   .maxpacket = 512, },
>> { .hw_ep_num =  2, .style = FIFO_TX,   .maxpacket = 1024, },
>> { .hw_ep_num =  2, .style = FIFO_RX,   .maxpacket = 1024, },
>> { .hw_ep_num =  3, .style = FIFO_TX,   .maxpacket = 256, },
>> { .hw_ep_num =  3, .style = FIFO_RX,   .maxpacket = 256, },
>>
> Thank you, I can see that more recent kernel have the possibility
> to specify this config in platform_data, which is great !
>
>> Ravi
>>
>>> >> Jean-Philippe François
>>> >> _______________________________________________
>>> >> Davinci-linux-open-source mailing list
>>> >> [email protected]
>>> >> http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source
>>> >
>>
> _______________________________________________
> Davinci-linux-open-source mailing list
> [email protected]
> http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source
>
_______________________________________________
Davinci-linux-open-source mailing list
[email protected]
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source

Reply via email to