MPC5775E eDMA channel 0 interrupt somehow disabled

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

MPC5775E eDMA channel 0 interrupt somehow disabled

Jump to solution
411 Views
0xEC
Contributor IV

hi everyone,

I am using eDMA to fill CFIFO0 for eqADC from system memory to CFPR(Command fifo push register)

I set DMA request of related channel to create DMA request. When I start the eDMA channel it starts to transfer data from system memory to CFIFO, but after one time fill eDMA won't be triggered again. I debug it and saw that eDMA ERQ register's related bit is set to 0 somehow. Do you have any issue like this?

RM says that CFFEx, CFFSx and CFFFx bits must be set to request DMA.

0xEC_0-1672831594631.png

this is my debug output which shows all three bits are set,

0xEC_1-1672831930952.png

eDMA channel 0 enable request disabled after one transfer for CFIFO. Should I enable again manually each time the eDMA channel 0 finishes the transfer?

best,

Tags (3)
0 Kudos
1 Solution
399 Views
davidtosenovjan
NXP TechSupport
NXP TechSupport

Apparently you have set DREQ bit, this needs to be set to zero.

davidtosenovjan_0-1672993818677.png

 

View solution in original post

0 Kudos
3 Replies
395 Views
davidtosenovjan
NXP TechSupport
NXP TechSupport

Pay attention to following example code:

https://community.nxp.com/t5/MPC5xxx-Knowledge-Base/Example-MPC5674F-eQADC-eDMA-Single-Scan-CW210/ta...

In the main file you may see how to properly set DMA TCD descriptors.

0 Kudos
400 Views
davidtosenovjan
NXP TechSupport
NXP TechSupport

Apparently you have set DREQ bit, this needs to be set to zero.

davidtosenovjan_0-1672993818677.png

 

0 Kudos
397 Views
0xEC
Contributor IV
I tried this one also, from RM I read it, it is set in eDMA TCDx_CSR register. I disable it by EDMA_DRV_DisableRequestsOnTransferComplete(eqadc1_config0.cfifoConfigArray[0].dmaVirtualChan, false);
it behave same.
0 Kudos