Is there any kind of basic tutorial for the different types of USB endpoints when coding in the CSL on Full Speed C55x devices? (1)
I am particularly having trouble with Isochronous endpoints.
What I have discovered for Interrupt endpoints is that it is helpful to set the callback event mask to include Reset as well as EOT. Without Reset, the callback is never called unless you prime the system with an initial call to send a packet. But, with the Reset event, the callback will be executed, and it's fairly easy to queue up a packet on Reset or EOT, and this keeps the flow going.
For the Isochronous endpoints, I have set the event mask to include Reset, PSOF, and EOT, and yet I don't seem to be getting results. The real problem, I think, is that I don't understand whether I should be using EOT events, PSOF events, both, or something else. Is this something that depends upon the subcategory of isochronous transfers that I want to implement? (2)
Is there any way that someone at Texas Instruments could help explain the intended usage pattern for Full Speed Isochronous USB, since the CSL USB Programmer's Reference Guide does not have any details at all on iso packets? (3)
I have found isochronous USB sample code for the new LOWPWR DSP chips, but they are all High-Speed-capable devices which have a different CSL API for USB, and thus do not translate directly to the C5506. Control endpoints are easy, since they're in all of the examples and sample code.
P.S. I find it rather confusing that the 5505 and 5515 are referred to as LOWPWR, when the 5506 data sheet clearly refers to the chip and other members of its family as "High-Performance, Low Power" - is there an official designation for the 5503/5506/5507/5509(A) and/or 5510? (4)