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 uPP DMA

Other Parts Discussed in Thread: OMAP-L138

I'm using the OMAP-L138 eXperimenter Kit from Logic PD and question is about the uPP por DMA.  

Is it sufficient to poll the UPxS2.PEND bit to rewrite the DMA descriptor registor and not corrupt the current DMA transfer (for transmission).   If I poll the PEND bit , is it necessary to enable any of the interrupt registers to prevent any DMA transfer corruption? 

If necessary, how do I enable a DMA transfer complete interrupt?  I am looking at the uPP user guide and I see four interrupt related registers (UPISR, UPIER, UPIES, UPIEC) and I'm unsure which one(s) I should care about to check whether the DMA transfer has completed.   

Is there any uPP DMA Programmer's Guide available or some sample code available?

  • Joe Tijerina said:

    Is it sufficient to poll the UPxS2.PEND bit to rewrite the DMA descriptor registor and not corrupt the current DMA transfer (for transmission).   If I poll the PEND bit , is it necessary to enable any of the interrupt registers to prevent any DMA transfer corruption? 

    It's not necessary to enable interrupts, but performance will be terrible if you are constantly polling.

    Joe Tijerina said:

    If necessary, how do I enable a DMA transfer complete interrupt?  I am looking at the uPP user guide and I see four interrupt related registers (UPISR, UPIER, UPIES, UPIEC) and I'm unsure which one(s) I should care about to check whether the DMA transfer has completed.   

    Is there any uPP DMA Programmer's Guide available or some sample code available?

    Write a 1 to the bits you want to enable in the UPIES register.  (If you ever wanted to disable them later for some reason you would write a 1 to the corresponding bit in the UPIEC register.)

    Take a look at the sample ISR in Section 2.6.4 of the UPP Guide.  It shows the usage of UPIER and UPEOI.  You shouldn't need to read UPISR.

    Besides the peripheral configuration you will also need to configure the interrupt controller and core interrupts.  This can be done easily using BIOS as described in this article.