Hello,
I'm unsuccessfully trying to clear a big size SDRAM buffer using MDMA descriptors list mode by pointing to a 32-bytes buffer (since I'm using MSIZE = 32 bytes) filled with zeros as source buffer, and setting XCOUNT = 1 and XMODIFY = 0 in source descriptor.
The problem I'm experiencing is basically that after starting a list descriptors copy with using such descriptors, adi_mdma_IsCopyInProgress() is returning true forever.
My current project code is based on MemCopyListMode sample code, which I modified as follows.
Added MEMCOPY_XMODIFY_BYTES definition in header:

Source data buffer resized to MSIZE and number of src/dst descriptors doubled (see comment in code):

PrepareDataBuffers() adapted:

Modified PrepareDescriptors():


Resulting behavior is that main() is looping forever here in this loop:

This is DMA8 and DMA9 registers content when the DSP is looping forever in while loop above, nothing looks out of place from my point of view:


Thanks in advance to everybody would like to contribute
BR
Edit Notes
missing part[edited by: SpoonMan999 at 8:57 AM (GMT -4) on 29 Jul 2025]