Announcements
IMPORTANT: Cypress Developer Community is transitioning on October 20th. To learn more and be prepared for this change, check out our latest announcement.
cancel
Showing results for 
Search instead for 
Did you mean: 

USB Superspeed Peripherals

Anonymous
Not applicable

Below code works well at High speed, but return error 69 at super speed:

   

   dmaCfg1.size = 64;
   dmaCfg1.count = 2;
   dmaCfg1.prodSckId = CY_U3P_CPU_SOCKET_PROD;
   dmaCfg1.consSckId = CY_U3P_UIB_SOCKET_CONS_5;
   dmaCfg1.dmaMode = CY_U3P_DMA_MODE_BYTE;
   dmaCfg1.notification = CY_U3P_DMA_CB_CONS_EVENT;   
   dmaCfg1.cb = CyFxHIDDmaCallback;
   dmaCfg1.prodHeader = 0;
   dmaCfg1.prodFooter = 0;
   dmaCfg1.consHeader = 0;
   dmaCfg1.prodAvailCount = 0;   

   

   CyU3PDmaChannelCreate (&glChHandleHID, CY_U3P_DMA_TYPE_MANUAL_OUT, &dmaCfg1);    
   CyU3PDmaChannelSetXfer (&glChHandleHID, 0);
    ......

   

   status = CyU3PDmaChannelGetBuffer (&glChHandleHID, &buf_p, 2000);

   


    Why this happen? How can I make it work well at supper speed?

0 Likes
1 Reply
Anonymous
Not applicable

Hi,

   

Error 69 (0x45) is the timeout error which means the API is not able to get an empty buffer within the timeout duration (2000 mS).

   

Does this error occur the first time you call the API or does it happen somewhere in between after few successful transfers?

   

Please make sure that there is empty bufffers in the DMA Channel and all the previously filled buffers have been consumed by the USB (Computer)

   

Regards,

   

- Madhu Sudhan

0 Likes