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.

USB DMA RNDIS question

Hi:

        We are  using AM335X   in our project and have looked at the starterware examples. We use one of the USB controller of the AM335X  as a USB bulk device. The cppi  DMA mode is to be used, We are using the  Cppi41DmaModeSet function  in  the file of cppi41dma.c  of staterware to set the working mode of the CPPI DMA controller. However,  it seems doesn't work , we can't change the DMA working mode to be RNDIS or GRNDIS ,but only theTRANSPARENT mode( default mode ) can be used. 

      We checked the  Cppi41DmaModeSet  function  in  the file of cppi41dma.c  of staterware carefully, the Registers and Base address used in this fuction seems diffetent with the the Registers of the USB module listed and descripted  in the datasheet of AM335X.  The differences bewteen the esample code and the datasheet are as follow:

    The usbInstance->otgBaseAddress is  initialized to the base address of USBSS In the Cppi41DmaInit function, in the Cppi41DmaModeSet  function. usbInstance->otgBaseAddress  is  used as the base address of the USB0CTRL Register and USB0MODE Register , but we can't find USB0CTRL Register and USB0MODE Register  in the Registers list of USBSS , however,  we find these registers in the Registers list of USB0_CTRL  and USB1_CTRL .  In additon, the USB0MODE Register (USB_0_MODE) appeared  in the Cppi41DmaModeSet  function is not used for DMA working mode setting but for IDDIG, PHY_TEST and LOOPBACK setting accordding to the datasheet of the USB0_CTRL in AM335X. For DMA working mode setting, there seems exist two registers as USB0TXMODE register and USB0 RXMODE register in the registers list of USB0_CTRL.

    Now , we are confused by the example code in starerware and the datasheet of AM335x,  Although we have do  a lot of  code debugging work , it still doesn't work.

Can anyone from TI  help us to solve this problem?

Best Regards

Y tck