3 Replies Latest reply on Oct 20, 2011 9:43 AM by uwe.hagmaier

    Bulk-Mode Burstsize and dma-buffers in FX3

    uwe.hagmaier

       Hello

         

       

         

      I´ve experienced problems with burstsize > 8 when setting up a bulk endoint at the fx3.

         

      Using code like:

         

       

         

              endPointConfig.enable = 1;

         

              endPointConfig.epType = CY_U3P_USB_EP_BULK;

         

              endPointConfig.burstLen = 16;

         

              endPointConfig.streams = 0;

         

       

         

              /* Configure the Endpoint */

         

              apiRetStatus = CyU3PSetEpConfig(CY_FX_EP_PRODUCER,&endPointConfig);

         

              if (apiRetStatus != CY_U3P_SUCCESS)

         

              {

         

                  /* Error Handling */

         

                  CyU3PDebugPrint (4, "USB Set Endpoint config failed, Error Code = %d\n",apiRetStatus);

         

              }

         
          Throws an error 64 when calling CyU3PSetEpConfig.   
         
          Using endPointConfig.burstLen = 16 seems to work.   
         
          Is the burstlength in fx3 limited to 8 ?   
         
              
         
          Another question is the relation between dma-buffersize an burstlength.   
         
          It seems to work when i do a cpu to endpoint dma with a buffer-size of 16*1024 to a endpoint with a burstsize of 8.   
         
          Ist that ok ?   
         
          E.g. does that mean there is no fixed relationship between endpoint burstlength and dma-buffersize within the fx3 device ?   
         
              
         
          best regards