dma test in imx8qm board getting passed for first time, from next time onwards test getting failed

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

dma test in imx8qm board getting passed for first time, from next time onwards test getting failed

720 Views
mallibeerala
Contributor III

Dear NXP Team,

I am using I.MX8QM Eval board. Kernel version - 5.15.32

I am trying to do dmatest, dma test in imx8qm board getting passed for first time, from next time onwards test getting failed. After board reset only it is working.

I am configuring dmatest as Module type. After getting dmatest passed for first time, now I did rmmod dmatest.ko, insmod dmatest.ko, now also I am getting dmatest fail.

Please help us to resolve this Issue.

Thanks & Regards,
Mallikarjuna



0 Kudos
8 Replies

575 Views
RameshChandrakasan
Contributor III

Hi Joanxie

I also belongs to the same team.

I.MX8QM Board PCie ports are normally used in IOT application for connecting Wifi Driver. So, I am sure that these driver uses DMA transfer.

My Set up is Look as Below

RameshChandrakasan_0-1698302802119.png

Queries

1) Here which DMA i need to use ( sdma / edma)?

2) Here End Point is allocated for BAR address

Pls suggest

0 Kudos

521 Views
joanxie
NXP TechSupport
NXP TechSupport

sorry for my late response, I've been taken my annual leave last week, imx8qm uses edma as imx93 does, I tested on imx93, which works but fail on imx8qm either, I was told that imx8qm doesn't support this before, so I posted here, I checked the source code, imx8qm is special, maybe you need to check if memcpy you tested which is belong to dma controller of dma subsytem or not, and each channel of imx8qm needs power domain, you also can double checked it

0 Kudos

690 Views
joanxie
NXP TechSupport
NXP TechSupport

I tested on my board as below:

joanxie_0-1696997841089.png

 

0 Kudos

684 Views
mallibeerala
Contributor III

Hello joanxie,


I am also using same procedure, first time when I am running dmatest with "echo 1 > run" then test getting passed but next time when I am running test with "echo 0 > run" test getting failed.

While I am doing dmatest by changing channel number, for first time test getting passed, from next time test getting failed.

After test completed, dmatest not coming out from loop, by pressing enter only it is coming out from loop.

Please help us to resolve this Issue.

Thanks & Regards,
Mallikarjuna

0 Kudos

678 Views
joanxie
NXP TechSupport
NXP TechSupport

how to reproduce this? do you mean this?

joanxie_0-1697015602018.png

 

0 Kudos

673 Views
mallibeerala
Contributor III

Hi joanxie,

Sorry for the confusion.

After adding dma channel, I am running dmatest by using command "echo 1 > /sys/module/dmatest/parameter/run", now dmatest is running and it is getting success.

Now I am doing "echo 0 > /sys/module/dmatest/parameter/run", for release the channel.

Again, I am adding same dma channel, I am running dmatest by "echo 1 > /sys/module/dmatest/parameter/run", now dmatest is running but it is getting failed.

Thanks & Regards,
Mallikarjuna

0 Kudos

662 Views
joanxie
NXP TechSupport
NXP TechSupport

got it ,current bsp has fixed this issue on sdma, but imx8qm uses edma, I confirmed that current edma  driver doesn't support memory to memory

0 Kudos

656 Views
mallibeerala
Contributor III

Hi joanxie,

If the current bsp is not working for "memory to memory", why first time it is getting success.

Can I use sdma drivers, if yes where can I find the sdma drivers.

If not possible is there any other way to test dma.

Please help us we stuck here.

Thanks & Regrads,
Mallikarjuna

0 Kudos