2 Replies Latest reply on Apr 9, 2010 3:13 PM by userc_44993

    FX2 peripheral domain loopback test

              I was conducting a loopback test (using the EP2 & EP6) FIFO's stricly in the peripheral domain. A DSP was sending data, through a static memory port, to EP6. Then, the cypress firmware was programmed to copy that data to EP2 at which point the DSP would read that data, from EP2, and EP2 would get emptied. The problem was that, because this was an internal loopback with no usage of the USB domain and host side, the empty flag and byte count for EP6 was not getting decreased after data was copied from EP6 to EP2. Therefore, EP6 is always growing and eventually it will get filled up. Is there some method of having the 8051 set the EP6 empty flag get set to 0 once EP6 gets copied to EP2 ? I attempted to write a zero back to it in the firmware code, but that had no effect.   
        • 1. Re: FX2 peripheral domain loopback test
                  When data is copied from one endpoint to other this endpoint should be freed of memory... can you post the code snippet that you are using do this transfer of data....   
          • 2. Re: FX2 peripheral domain loopback test
                    I've been trying to write my own GPIF output on a CY7C68013 on the CY3684/3674 EZ-USB Dev Brd. However I never see the empty flag of EP2 go low (indicating not empty). I've modified the bulk_loop example to show the EP2EF from EP2468STAT, EP24FIFOFLGS, EP2FIFOFLGS, and EP2CS. The empty flags from EP24FIFOFLGS and EP2FIFOFLGS never ever go low. The empty flag on EP2CS sometimes toggles to low. EP2468STAT appears to be the most reliable, however I am able to send data to EP2 and occasionally not see even EP2468STAT's EP2EF go low within TD_POLL. I changed TD_POLL to sample EP2468STAT once at the beginning of the loop and still only this register fires low. Since all of the GPIF examples use EP2FIFOFLGS to test for EP2 being not empty I'm hoping this is why they didn't work? However shouldn't all of the copies of EP2 empty flag go low when EP2 is written into? Or is there something that I'm not getting?