Skip to main content
BCoch
Senior
Feb 4, 2019 10:12 PM UTC
Solved

Is it possible to setup chained DMA to/from a peripheral?

For example, to have the first few bytes of a single SPI transaction come from / go to a particular location, with subsequent bytes coming from / going to another location.

This topic has been closed for replies.
waclawek.jan
waclawek.janBest answer
Super User
Feb 4, 2019 10:18 PM UTC

No.

You could set up several DMAs triggered suitably by timers, though.

JW

5 replies

waclawek.jan
waclawek.janBest answer
Super User
Feb 4, 2019 10:18 PM UTC

No.

You could set up several DMAs triggered suitably by timers, though.

JW

BCoch
BCochAuthor
Senior
Feb 4, 2019 10:26 PM UTC

Thanks for the prompt answer!

Piranha
Principal III
Feb 5, 2019 12:49 AM UTC

There is one exception, thought - ETH has it's own DMA with descriptors, which can have attached buffers of different size and chained in any order.

waclawek.jan
Super User
Feb 5, 2019 1:16 AM UTC

Yes, but ETH's scatter-gather DMA can't be used as general-purpose DMA, as its "peripheral-end" is hardwired to ETH's internals...

JW

Piranha
Principal III
Feb 5, 2019 1:24 AM UTC

Of course. I only added it as an additional information just in case someone interested in Ethernet is reading this. :)