What does HSNAK bit of EP0CS signify?
HSNAK is automatically set to 1 whenever the SETUP token of a CONTROL transfer arrives. The EZ-USB logic automatically NAKs the STATUS (handshake) stage of the CONTROL transfer until the firmware clears the HSNAK bit by writing '1' to it. This mechanism gives the firmware a chance to hold off subsequent transfers until it completes the actions required by the CONTROL transfer. Firmware must clear the HSNAK bit after servicing every CONTROL transfer. For more information refer technical reference manual in the link http://www.cypress.com/?rID=38232