942
SAM9G45 [DATASHEET]
6438K–ATARM–12-Feb-13
41.4.4.3
Programming DMAC for Multiple Buffer Transfers
Notes:
1. USR means that the register field is manually programmed by the user.
2. CONT means that address are contiguous.
3. REP means that the register field is updated with its previous value. If the transfer is the first one, then the user must manu-
ally program the value.
4. Channel stalled is true if the relevant BTC interrupt is not masked.
5. LLI means that the register field is updated with the content of the linked list item.
41.4.4.4
Replay Mode of Channel Registers
During automatic replay mode, the channel registers are reloaded with their initial values at the completion of each
buffer and the new values used for the new buffer. Depending on the row number in
Table 41-2 on page 942, some
or all of the DMAC_SADDRx, DMAC_DADDRx, DMAC_CTRLAx and DMAC_CTRLBx channel registers are
reloaded from their initial value at the start of a buffer transfer.
41.4.4.5
Contiguous Address Between Buffers
In this case, the address between successive buffers is selected to be a continuation from the end of the previous
buffer. Enabling the source or destination address to be contiguous between buffers is a function of
DMAC_CTRLAx.SRC_DSCR,
DMAC_CFGx.SRC_REP,
DMAC_CTRLAx.DST_DSCR
and
DMAC_CFGx.DST_REP registers.
Table 41-2.
Multiple Buffers Transfer Management Table
Transfer Type
AUTO
SRC_REP
DST_REP
SRC_DSCR
DST_DSCR
BTSIZE
SADDR
DADDR
Other
Fields
1) Single Buffer or Last
buffer of a multiple buffer
transfer
0
–
1
USR
2) Multi Buffer transfer
with contiguous DADDR
0
–
0
1
LLI
CONT
LLI
3) Multi Buffer transfer
with contiguous SADDR
0
–
1
0
LLI
CONT
LLI
4) Multi Buffer transfer
with LLI support
0
–
0
LLI
5) Multi Buffer transfer
with DADDR reloaded
0
–
1
0
1
LLI
REP
LLI
6) Multi Buffer transfer
with SADDR reloaded
0
1
–
1
0
LLI
REP
LLI
7) Multi Buffer transfer
with BTSIZE reloaded and
contiguous DADDR
1
–
0
1
REP
LLI
CONT
LLI
8) Multi Buffer transfer
with BTSIZE reloaded and
contiguous SADDR
1
0
–
1
0
REP
CONT
LLI
9) Automatic mode
channel is stalling
BTsize is reloaded
1
0
1
REP
CONT
REP
10) Automatic mode
BTSIZE, SADDR and
DADDR reloaded
1
REP
11) Automatic mode
BTSIZE, SADDR reloaded
and DADDR contiguous
1
0
1
REP
CONT
REP