Soft reset in EZ-USB(AN21xx/FX/FX1/FX2/FX2LP)

Question: In a EZ-USB design based on cypress firmware frameworks, after soft reset EZ-USB is not responding to Get Configuration Descriptor and Get Other Speed Descriptor request. Why?

 

Answer:

In the firmware frameworks the pointer to the configuration descriptor location (pConfigDscr) and other speed descriptor (pOtherConfigDscr) are located in internal memory (WORD). So during a soft reset the address stored in this pointer gets cleared and hence EZ-USB does not respond properly to Get Configuration Descriptor request and Get Other Speed Descriptor request after that. Moving the pointers to external memory should resolve this i.e declare both the pointers as xdata WORD variables.