From the release notes: "When the warm reset functionality of the CyU3PDeviceReset() API is used, any global variables used by the application will not be properly re-initialized. This is because the startup code that initializes these variables would have been lost and cannot be executed again without loading the application again. If warm reset is needed, the application code must ensure that all necessary data is saved and restored or re-initialized as required."
However, in my tests I have found that static global variables are indeed reset, or perhaps just zeroed out.
Could you please clarify on what global variables are not reset during a warm reset?
As the document says "any global variable" so all global variables will come into picture. Please let me know if you've a issue with this, we can work on it to find a solution.