WaitForXfer function doesn't work properly, when the FX3 is in U2 state. | Cypress Semiconductor
WaitForXfer function doesn't work properly, when the FX3 is in U2 state.
I'm using EZ-USB FX3 SDK verson 1.3.
The target board is Cypress FX3 DVK Device board Rev.3.
FX3's firmware is "cyfxbulklpmaninout" in dma_examples.
The host application program is "bulkloop.exe".
The host OS is Windows7 Professional 64bit (Japanese) with Service Pack 1.
1. Program the FX3 using "USB Control Center".
2. Run bulkloop.exe.
Select device, OUT EP and IN EP.
Check "Stop on Error".
Push "Start" button.
It stops within a few seconds, because a transfer failed.
However, it works properly if U1/U2 state is disabled in FX3 firmware.
(using CyU3PUsbLPMDisable function.)
But I don't want to make U1/U2 state disabled.
So, I used an In-Circuit debugger(JTAG-ICE) for FX3 firmware and
VisualStudio for BulkLoop application program.
Then, I think that WaitForXfer accessing doesn't work properly
when the FX3 is in U2 state.
Do you know the solution for this problem?
Is there a bug in BeginDataXfer or WaitForXfer?
Can the host application program know which status the FX3 is in? If so, which API?
Or, the USB device driver is responsible for this problem?
Help me, please.