Harald Welte wrote:
Basically the USB "framework" would need to be rewritten specifically for zero copy operation, if the hardware actually allows that.
unfortunately the old USB peripheral in the sam7s does not have DMA, you have to use FIFO / MMIO to put the data onto USB. It's really sad, almost all other peripherals can do DMA, but not the USB device controller.
I figured as much. Perhaps writing to the FIFO can happen already when initially receiving the data from the serial port, ie. without first storing to a buffer in RAM. But I think this will have some non-trivial consequences for the code.
//Peter