This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Enabling USB Client FIFO Double buffering

Processor: OMAP 3530

BSP version: TI_EVM_3530 - 6.13.00

Platform: EVM

 

I am developing a UVC client driver. since this BSP doesn't supports Isochronous transfer type I have configured the endpoint as bulk endpoint. Max packet size is congfigured as 512 bytes for high speed and Video streaming is successful and host device application is able to shoe the video frames send by the device.

I have enabled the DMA of musbfn (PDD) driver by assigning EnableDMA = 1 in musbfn driver registry.

I have enabled double buffirng also

I have modified following code line in UfnPdd_InitEndpoint function to enable the doulble buffing

case  EP_TYPE_BULK:

                     OUTREG8(&pGenRegs->TxFIFOsz, (MUSB_FIFOSZ_512_BYTE | (1<<4)));

But the problem is that, if I enable the double buffing as shown above, video is streaming but the following error is occuring,

"!!! ERROR => PreDmaActiviation wrong for EP 2, state 1" and after some time exception is occureing and video streaming is aborted.

Here my question is:

1. The way of enableing the double buffing is right or should I enable some more things?

2. Can we enable DMA and Double buffering at a time?

Thanks

Subbarao.