Strictly necessary cookies are on by default and cannot be turned off. Functional, Performance and Tracking/targeting/sharing cookies can be turned on below based on your preferences (this banner will remain available for you to accept cookies). You may change your cookie settings by deleting cookies from your browser. Then this banner will appear again. You can learn more details about cookies HERE.
Strictly necessary (always on)
Functional, Performance and Tracking/targeting/sharing (default off)
Previously I develop firnware of FX2P. It has a conception of auto commit for an in endpoint. If the packet end signal does not asserted and data are continuously written into the in endpoint. The data would be auto commited. What is the meanning of commit. Does it mean the end of a packet. Does the similarity exists for FX3？ I remmeber I should set the auto commit option for FX2L, but I have not seen the setting of auto commit for FX3.
Another question is: Does one packet have to exclusively occupy a buffer no matter how short the packet is?
COMMIT - Transfer of buffer handle from one block to another (For example, from GPIF II to USB).
The concept of AUTO/MANUAL COMMIT exists in both FX2LP and FX3. In FX2LP< the EPxAUTOINLEN registers determine when the buffer is committed to the USB side. In the case of FX3, the AUTO commit of data is taken care if the DMA channel is set to be of type AUTO and the buffer is full. The CyU3PDmaChannelCreate() API contains parameters to specify the size of each buffer and the type of DMA channel.
Data can only be committed in terms of buffers and not as individual bytes. So, even if a buffer is filled with a short packet, the entire buffer is committed.