In FSL USB 4.1.1, can someone please explain to me on why it takes so long (send 64 bytes) for the Callback function to be called? attachment show the picture where the green line shows the data being transfer to the ring buffer, then, the purple line shows the data being transfer to the end point. The yellow line shows the time when the call back is called. I also have the register dump on USB0.
it took quite a while for 64 bytes to complete the transfer. I checked that the D+ line is pull high for FS (through the USB_OBSERVE register) and the USB0 control register is set correctly (see attachment).
i have been scratching my head to understand how the call back mechanism works and why it takes too long. Can someone please advise me on how it works? What i am missing here.
On the TWR_SER board, i put the jumper J16 to pin 3 - 4 for device mode, J10 on 1-2.
The data transfer correctly for 8K bytes, but it is dawn slow. I tracked down to the slowness caused by the wait time for each call back at each 64 byte chunk. This transfer rate is even slower than LS.