FX2LP GPIF Done bit is not set if no data transfer took place

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
Jova_1140841
Level 1
Level 1

After triggering a GPIF statemachine I discovered that sometimes the GPIF DONE bit in the GPIFTRIG register is not set.

   

This happens after the statemachine is triggered, and no data has been transferred to the fifo. This happens even if  the state machine goes through the idle state.

   

I tried a simple statemachine doing nothing (no data transactions) , going from IDLE to S0, S1, S2...S6  and finally back to IDLE: this does NOT set the GPIF done bit!

   

Also, for a receiving fifo, if the host does not read any data, (and no data is added on the device side), the GPIF DONE bit is not set. Only after resetting the used endpoint, or if the host continues reading the DONE bit is set . 

   

Is my finding correct, and if so, what can I do to get the GPIF DONE bit to always be set if the IDLE state has been entered after triggering the state machine ?

0 Likes
1 Reply
Anonymous
Not applicable

Hi,

   

Please contact Cypress Tech Support and share your files with them with the required details.

   

Regards,

   

- Madhu Sudhan

0 Likes