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.

OMAP L138 McBSP EDMA transmit trigger

Hi,

I'm currently running SYS/BIOS 6.40 and are setting up an outgoing EDMA stream for the McBSP0 device on the OMAP L138 (DSP side). Having set up EDMA for both SPI RX and TX successfully, I would like to have some clarification about what triggers the DMA to start transfers to the McBSP transmit register.

For the SPI peripheral I had to explicitly enable DMA events, but looking at the McBSP register set (unless I am missing it), I am not seeing any explicit DMA event enable bits.

Any help would be appreciated.

Thanks 

  • Hello Engelbrecht,

    There are two events generated from the McBSP peripheral to enable EDMA data transfer.

    REVT – Receive Event
    XVET – Transmit Event

    The McBSP generates REVT for every element received and generates XEVT for every element transmitted. To service the data streams, the DMA channels associated with the McBSP must be set up properly.

    It was clearly explained in the technical reference manual section 26.2.14 EDMA Event Support, you can also refer Chapter 18 EDMA3 Controller in the (Technical reference manual) for McBSP transfer example.

    Regards
    Antony
  • I understand that the REVT and XVET signals to the EDMA engine when to copy or read. My question is not about that, but the actual trigger to start transfers. Is the trigger then the event enable for the MCBsp EDMA channel?

    Thanks
  • Hi Engelbrecht,

    Yes, correct set the bit in the EDMA event enable register that corresponds to the desired channel for the McBSP peripheral, When an event is asserted from a peripheral, it gets latched in the corresponding bit of the event register (ER.En = 1). If the corresponding event in the event enable register (EER) is enabled (EER.En = 1), then the EDMA3 prioritizes and queues the event in the appropriate event queue.

    Regards

    Antony