2 Replies Latest reply on Jun 9, 2012 7:22 AM by rama.sai.krishna.vakkantula

    DMA channel abort/reset/destroy go hung-up

    tatsuya.kudoh

      Hi,

         

      I'm using GPIF-II and Bulk-IN transfer with auto-type DMA, infinite size, like this:

         

      CyU3PDmaChannelCreate (&DmaChannel, CY_U3P_DMA_TYPE_AUTO, &DMACfg);

         

      CyU3PDmaChannelSetXfer(&DmaChannel, 0);

         

      Then, when I stop DMA with CyU3PDmaChannelAbort(), CyU3PDmaChannelReset(), or CyU3PDmaChannelDestroy(),

         

      sometimes these APIs hung up, not return from function.

         

      (It occurs in SuperSpeed only, I have looked...)

         

       

         

      How can I stop DMA safely?