|ARM Technical Support Knowledge Articles|
Applies to: PL08x DMAC (DM & SM)
If you program a value into TransferSize field and if you are running the DMA in peripheral flow control, is the counter decremented and what happens if the counter reaches 0 before a DMALBREQ or DMALSREQ is generated ? Is the flag which indicates the transfer completed asserted and the associated interrupted generated if enabled?
The behaviour of the DMA controller if TransferSize contains a non-zero value in peripheral flow control mode is UNDEFINED and cannot be relied upon to provide a meaningful indication of end-of-transfer.
Both the Terminal Count signal and interrupt are generated, providing the end of transfer is indicated by the peripheral raising LSREQ or LBREQ. In peripheral flow control mode, the Terminal Count field is decremented but it will not be used to generate a Terminal Count signal or interrupt.
Did you find this article helpful? Yes No
How can we improve this article?