StarterWare AM1808 1.00.03.03 usb_dev_bulk exampleAdjusting library code at usblib / device / usbdbulk.c
By "cannot enumerate" I mean on Windows hosts in Device Manager: "This device cannot start. (Code 10)"
am i missing something? thanks!!
Is this why?
sprufw6b.pdf section 2.6:
Therefore RX(2048) + TX(2048) will be too big? But then why can't I set, say, the IN FIFO to 1024 and the OUT FIFO to 2048? Is there a symmetry requirement?
Are the 2048 and 4096 options vestigial? (E.g., work for OMAP-L138?) And what does the "biju" comment mean for 8192?
Alternatively, USB in a nutshell: Maximum data payload size for high-speed devices is 1024 bytes. [but isn't packet > payload?]? But then, why are the 2048, 4096, 8192 options even available at all?
Hi Jonathan Chen,
The 4K restriction is true for Dynamic FIFO configurations only.
The StarterWare USB stack supports endpoint FIFOs and have been tested for FIFO size 64.
Are you testing the bulk class application provided with StarterWare?
Can you please let us know the reason for your trying to go for FIFO sizes up to 4k please?
have you made any changes to use DMA in your application?
Yes, I am testing the StarterWare AM1808 usb_dev_bulk example, no changes to DMA in the example or the library code.
Reasons for changing FIFO size:
Newer observations from my testing with usb_dev_bulk, using the same size FIFO for Tx and Rx (this is probably required for loopback?):
Also, from sprufw6b.pdf Section 22.214.171.124.1.2
the payload (packet size) for transfers over the USB and is required by the USB Specification to be either 8, 16, 32, 64 (Full-Speed or High-Speed) or 512 bytes (High-Speed only)
Further testing with EVM as a Full Speed device (default was High Speed)
This pretty much explains the problem, although there are some outstanding mysteries:
All content and materials on this site are provided "as is". TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with regard to these materials, including but not limited to all implied warranties and conditions of merchantability, fitness for a particular purpose, title and non-infringement of any third party intellectual property right. TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with respect to these materials. No license, either express or implied, by estoppel or otherwise, is granted by TI. Use of the information on this site may require a license from a third party, or a license from TI.
TI is a global semiconductor design and manufacturing company. Innovate with 100,000+ analog ICs andembedded processors, along with software, tools and the industry’s largest sales/support staff.