Post Go back to editing

MDMA Stall

Category: Hardware
Product Number: ADSP-21587

Hi team,

I am trying to excute mdma from L1 memory to SMC interface which is connected to FPGA. In my test code mdma works fine,  but in the target program mdma stalls.

Registers right after mdma requested:

DMA8: CFG 04000201 STAT 00006000 AddrStart 282601e8 Cur_Addr 28260204 Cur_XCNT 0000000c
DMA9: CFG 04200203 STAT 00006200 AddrStart 44000100 Cur_XCNT 00000013

mdma configuration:

srcTrans.XModify = 4;
srcTrans.YCount = 1;
srcTrans.YModify = 4;

srcTrans.pStartAddress = (void*)input.GetPointer();
srcTrans.XCount = len;
dstTrans.XModify = 0;
dstTrans.YCount = 1;
dstTrans.YModify = 0;

dstTrans.pStartAddress = (void*)ULB0_DATA_S;

dstTrans.XCount = len;

ret = adi_mdma_Copy2D(hStream, ADI_DMA_MSIZE_4BYTES, &dstTrans, &srcTrans);

When I transfer the data like followin codes, there is no problem.

while (len>0){
    *ULB0_DATA_S = *saddr;
    saddr++;
    len--;
}

Please let me know if you find any possible causes.
Parents
  • Hi,

    To assist and understand your system better, could you please reply for the following questions:

    1.Regarding “In my test code mdma works fine, but in the target program mdma stalls.”, Could you please explain in detail in which setup works and what do you mean by ”target program”?
    2.Please confirm whether you have configured the SPU peripheral to generate secure transactions for the MDMA.
    3.Please share a screenshot of CCES showing where the MDMA is stalled.
    4.Does the API “adi_mdma_Copy2D” return? If yes, what is the return value of “adi_mdma_Copy2D”?

    Regards,
    Nandini C

  • Hi Nandini,

    Thank you for your advice.

    The Problem was SPU configuration. Once I have fixed the SPU configuration, mdma works properly.

    Thank you!

Reply Children
No Data