AnsweredAssumed Answered

Error on Open the second MDMA

Question asked by jpb on Mar 2, 2010

Hi,

 


I'm using the MDMA1 (MODE_DESCRIPTOR_LAGE) and MDMA0 (MODE_SINGLE) to memory-to-memory copy. After open the MDMA0 successfully, the MDMA1 open result the error ADI_DMA_RESULT_ALL_IN_USE. If i do not open the MDMA0, the MDMA1 open and works successfully.

 

Why does the DMA result all in use if they are in differents DMA channels?

 


First, i open the MDMA0:

 


result = adi_dma_Open(DMAHandle, ADI_DMA_MDMA_D0, NULL, &DestinationChannelHandle, ADI_DMA_MODE_SINGLE, NULL, NULL);
    if ( result != ADI_DMA_RESULT_SUCCESS)

          return ADI_ARM_RESULT_DMA_ERROR;


result = adi_dma_Open(DMAHandle, ADI_DMA_MDMA_S0, NULL, &SourceChannelHandle, ADI_DMA_MODE_SINGLE, NULL, NULL);
     if ( result != ADI_DMA_RESULT_SUCCESS)

          return ADI_ARM_RESULT_DMA_ERROR;

 


And then, i try to open the MDMA1:

 

 

result = adi_dma_Open(DMAHandle, ADI_DMA_MDMA_S1, (void *)0, &srcMemoryDMAHandle, ADI_DMA_MODE_DESCRIPTOR_LARGE, NULL, tdmInterfaceMDMACallback);
    if ( result != ADI_DMA_RESULT_SUCCESS)

          return;


result = adi_dma_Open(
DMAHandle, ADI_DMA_MDMA_D1, (void *)0, &destMemoryDMAHandle, ADI_DMA_MODE_DESCRIPTOR_LARGE, NULL, tdmInterfaceMDMACallback);
    if ( result != ADI_DMA_RESULT_SUCCESS)

          return;

 

 

Can i use the same DMAHandle?


Regards,

 

João Paulo

Outcomes