Repeated DMA request behavior

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

Repeated DMA request behavior

530 Views
scottm
Senior Contributor II

I've read all of the documentation I can find on the Kinetis eDMA module (I'm specifically using a K22F part) but I can't find a good description of the hardware request handling.

My question is this:  Assuming the eDMA module is using round robin mode, if you have a DMA channel configured to fill the FIFO on a peripheral like the I2S/SAI module and a single minor loop doesn't fill the FIFO past the watermark, or if the SAI FIFO drains a byte during the transfer and the watermark isn't reached, is the new DMA request handled immediately by the channel with a new iteration, or does it wait until the round robin scan comes back around to that channel?

I'm attempting an unusual channel linking setup and I need to make sure the first channel always completes exactly one minor loop before each request on the second channel.

Labels (1)
Tags (2)
0 Kudos
1 Reply

403 Views
jingpan
NXP TechSupport
NXP TechSupport

Hi Scott,

"Channel priorities are treated as equal, that is, constantly rotating, when Round-Robin Arbitration mode is selected." So, I think since current minor loop is finished, eDMA will service next request source until the round robin scan comes back around to that channel.

Regards,

Jing

0 Kudos