handling shortpacket with GPIFII | Cypress Semiconductor
handling shortpacket with GPIFII
Following are the ways to commit a short packet from GPIF II to USB:
Actually we have a action called COMMIT to submit a short packet. But we need to do IN_DATA action along with the COMMIT action. If we don't do IN_DATA then it will generate a Zero length packet after committing the short packet. But if you do IN_DATA then there is a chance that you may see extra data for one clock cycle.
If you are seeing any extra data, then try changing the implemention as mentioned below:
Instead of doing COMMIT and IN_DATA actions in that state, do INT_CPU action. This will generate an interrupt to the firmware and there you can commit the short packet by calling CyU3PDmaChannelSetWrapUp API.