Some operating systems (OSX) allow multiple buffers to be scheduled for isochronous transfers in order to sustain high bandwidths with low latency. I'm having some trouble achieving maintained bandwidth on the TM4C, and one thing I've tried is to call USBHCDPipeSchedule() multiple times with different buffer addresses to allow the USB system plenty of space to accumulate incoming data. However, there is no documentation to clarify whether the USB API allows only a single call to USBHCDPipeSchedule() - until the callback notifies that the buffer has been filled - or if multiple calls can queue multiple buffers in advance. If the latter, there is no documentation of how many buffers can be queued before the USB API runs out of storage to remember the separate buffer addresses. In the extreme case, dynamic memory allocation for buffer pointer storage would be needed, but that sort of implementation would obviously run the risk of added latency compared to a fixed allocation limit.
Are there any more detailed specification and documentation of the TivaWare USB Library other than SPMU297A?
I'm a bit spoiled by the TMS320VC55xx family, where the USB hardware is separately documented, and the USB software comes with full source. In that environment, all questions are more readily answered.