499
11054A–ATARM–27-Jul-11
SAM9X25
499
11054A–ATARM–27-Jul-11
SAM9X25
1.
If software wishes to disable a channel n prior to the DMAC transfer completion, then it
can set the DMAC_CHER.SUSPEND[n] bit to tell the DMAC to halt all transfers from
the source peripheral. Therefore, the channel FIFO receives no new data.
2.
Software can now poll the DMAC_CHSR.EMPTY[n] bit until it indicates that the channel
n FIFO is empty, where n is the channel number.
3.
The DMAC_CHER.ENABLE[n] bit can then be cleared by software once the channel n
FIFO is empty, where n is the channel number.
When DMAC_CTRLAx.SRC_WIDTH is less than DMAC_CTRLAx.DST_WIDTH and the
DMAC_CHSRx.SUSPEND[n] bit is high, the DMAC_CHSRx.EMPTY[n] is asserted once the
contents of the FIFO do not permit a single word of DMAC_CTRLAx.DST_WIDTH to be formed.
However, there may still be data in the channel FIFO but not enough to form a single transfer of
DMAC_CTLx.DST_WIDTH width. In this configuration, once the channel is disabled, the remain-
ing data in the channel FIFO are not transferred to the destination peripheral. It is permitted to
remove the channel from the suspension state by writing a ‘1’ to the DMAC_CHER.RESUME[n]
field register. The DMAC transfer completes in the normal manner. n defines the channel
number.
Note:
If a channel is disabled by software, an active single or chunk transaction is not guaranteed to
receive an acknowledgement.
31.4.6.1
Abnormal Transfer Termination
A DMAC transfer may be terminated abruptly by software by clearing the channel enable bit,
DMAC_CHDR.ENABLE[n] where n is the channel number. This does not mean that the channel
is disabled immediately after the DMAC_CHSR.ENABLE[n] bit is cleared over the APB inter-
face. Consider this as a request to disable the channel. The DMAC_CHSR.ENABLE[n] must be
polled and then it must be confirmed that the channel is disabled by reading back 0.
Software may terminate all channels abruptly by clearing the global enable bit in the DMAC Con-
figuration Register (DMAC_EN.ENABLE bit). Again, this does not mean that all channels are
disabled immediately after the DMAC_EN.ENABLE is cleared over the APB slave interface.
Consider this as a request to disable all channels. The DMAC_CHSR.ENABLE must be polled
and then it must be confirmed that all channels are disabled by reading back ‘0’.
Note:
If the channel enable bit is cleared while there is data in the channel FIFO, this data is not sent to
the destination peripheral and is not present when the channel is re-enabled. For read sensitive
source peripherals, such as a source FIFO, this data is therefore lost. When the source is not a
read sensitive device (i.e., memory), disabling a channel without waiting for the channel FIFO to
empty may be acceptable as the data is available from the source peripheral upon request and is
not lost.
Note:
If a channel is disabled by software, an active single or chunk transaction is not guaranteed to
receive an acknowledgement.
Содержание SAM9X25
Страница 26: ...26 11054A ATARM 27 Jul 11 SAM9X25...
Страница 138: ...138 11054A ATARM 27 Jul 11 SAM9X25 138 11054A ATARM 27 Jul 11 SAM9X25...
Страница 162: ...162 11054A ATARM 27 Jul 11 SAM9X25 162 11054A ATARM 27 Jul 11 SAM9X25...
Страница 216: ...216 11054A ATARM 27 Jul 11 SAM9X25 216 11054A ATARM 27 Jul 11 SAM9X25...
Страница 266: ...266 11054A ATARM 27 Jul 11 SAM9X25 266 11054A ATARM 27 Jul 11 SAM9X25...
Страница 330: ...330 11054A ATARM 27 Jul 11 SAM9X25 330 11054A ATARM 27 Jul 11 SAM9X25...
Страница 374: ...374 11054A ATARM 27 Jul 11 SAM9X25...
Страница 468: ...468 11054A ATARM 27 Jul 11 SAM9X25 468 11054A ATARM 27 Jul 11 SAM9X25...
Страница 532: ...532 11054A ATARM 27 Jul 11 SAM9X25 532 11054A ATARM 27 Jul 11 SAM9X25...
Страница 692: ...692 11054A ATARM 27 Jul 11 SAM9X25 692 11054A ATARM 27 Jul 11 SAM9X25...
Страница 777: ...777 11054A ATARM 27 Jul 11 SAM9X25 777 11054A ATARM 27 Jul 11 SAM9X25...
Страница 886: ...886 11054A ATARM 27 Jul 11 SAM9X25 886 11054A ATARM 27 Jul 11 SAM9X25...
Страница 962: ...962 11054A ATARM 27 Jul 11 SAM9X25 962 11054A ATARM 27 Jul 11 SAM9X25...
Страница 1036: ...1036 11054A ATARM 27 Jul 11 SAM9X25 1036 11054A ATARM 27 Jul 11 SAM9X25...
Страница 1067: ...1067 11054A ATARM 27 Jul 11 SAM9X25 1067 11054A ATARM 27 Jul 11 SAM9X25 PTZ Pause Time Zero Enable pause time zero interrupt...
Страница 1069: ...1069 11054A ATARM 27 Jul 11 SAM9X25 1069 11054A ATARM 27 Jul 11 SAM9X25 PTZ Pause Time Zero Disable pause time zero interrupt...
Страница 1071: ...1071 11054A ATARM 27 Jul 11 SAM9X25 1071 11054A ATARM 27 Jul 11 SAM9X25 PTZ Pause Time Zero Pause time zero interrupt masked...
Страница 1128: ...1128 11054A ATARM 27 Jul 11 SAM9X25 1128 11054A ATARM 27 Jul 11 SAM9X25...
Страница 1130: ...1130 11054A ATARM 27 Jul 11 SAM9X25...
Страница 1131: ...1131 11054A ATARM 27 Jul 11 SAM9X25 Revision History Doc Rev 11054A Comments Change Request Ref 1st issue...
Страница 1132: ...1132 11054A ATARM 27 Jul 11 SAM9X25...
Страница 1144: ...xii 11054A ATARM 27 Jul 11 SAM9X25...