Hi,
I've written an USB Video Class Driver (UVC) to use the DaVinci EVM
(1.10) as a video class device (camera). It works fine with a configured
in-endpoint (isochronous) which sends only one packet per micro frame or
rather the transfer mode is set to "high speed" (max 64Mbit/s).
But I need to transfer three packets per micro frame with a maximum
payload size of 1024 byte [1]. To do so, I set the wMaxPacketSize to
0x1400 [2] in the iso endpoint descriptor. That seems to break the
"rules" for high bandwidth periodic transfers as defined in the
musb_gadget.c file.
e.g. this check:
/* REVISIT this rules out high bandwidth periodic transfers */
tmp = le16_to_cpu(desc->wMaxPacketSize);
if (tmp & ~0x07ff)
goto fail;
Is it possible to setup an isochronous high speed high bandwidth
endpoint (max 192Mbit/s)? In case it is, what needs to be changed?
Thanks in advance!
Patrik
[1] should be possible according to the SPRUE35-PDF chapter 4.57
[2] see table 9-14 "Allowed wMaxPacketSize Values for Different Numbers
of Transactions per Microframe" in the USB 2.0 specification
_______________________________________________
Davinci-linux-open-source mailing list
[email protected]
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source