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.

EDMA(SAM) on OMAP 3530

Hi all

   I am working on 2-d EDMA to transfer data from external to internal memory . My 2 d dma is working fine without using fifo width ( enabling sam ) . Now i want to do a dma which requires SAM to be enabled in the OPT register . I ahve selected the FIFO width to be 8 bit and the source adress is alligned to character ( byte alligned ) . when I start dma the address allignes itself to some adress which seems to be 256 bit alligned and getting an TRERR error in TPTCj_ERRSTAT register.  Note : i am enabling only SAM

I feel i am missing a setting in some register .

 

Regards

Ravi

 

  • The address should be 256 bit aligned; FIFO width has nothing to do with the address alignment.

  • Hi,

    In the TRM spruf98b.pdf, it was mentioned that "If SAM is set to FIFO mode then the user should program the Source address to be aligned to the value specified by the OPT.FWID field. No errors are recognized here but TC will assert error if this is not true." Also the user has options to change the FIFO Width from 8-bit to 256-bit.

    We need to copy a fixed value from an odd address location in a buffer, (buffer is byte aligned) into another address (byte aligned)location. This we do using EDMA as the copy is to be performed multiple times. Since the user has options to vary the FIFO width, we set the FIFO width to 8-bit.

    As per the constraint mentioned above in the TRM, the data should be copied properly. But we observe that the data(byte) at a 256-bit aligned location is being filled in the desired locations.

    Does this mean that the FIFO width is not variable and it would be 256 bits always? If I need to copy the data from an odd address location then how do I do it?

    Thanks,

    Ravi

  • The following note is in the IVA chapter:

    "Constant addressing mode is supported only from/to IVA2.2 C64x + Megamodule memories,
    not from/to device memories and peripherals. This can be replaced by using a
    post-increment addressing mode and an index equal to 0."

    That is, you cannot use SAM/DAM for use with external memory.

    Brad