37.4 DMA Controller Peripheral Connections

The SAMA5D2 features two DMACs: XDMAC0 and XDMAC1. Both have the same features:

  • Programmable secure access
  • Two 64-bit hosts
  • 16 channels and 55 hardware requests embedded
  • Sixteen 64-bit-word FIFOs on all channels
  • Linked list support with status write back operation at end of transfer
  • Word, half-word, byte transfer support
  • Memory-to-memory transfer
  • Peripheral-to-memory transfer
  • Memory-to-peripheral transfer

The DMA controller can handle the transfer between peripherals and memory and so receives the triggers from the peripherals below.

The following table gives an overview of the different access when secure/non-secure DMA needs to access a secure/non-secure peripheral, and when a secure/non-secure peripheral needs to access secure/non-secure DMA.

Table 37-1. DMA Configuration vs. Peripheral
PeripheralDMA
SecureNon-secure
Securex
Non-securexx

DMA Controller 0 manages transfers between peripherals and memory, and receives the triggers from the peripherals listed in the following table.

Table 37-2. DMA Channels Definitions (XDMAC0)
Instance NameChannel T/RInterface NumberXDMAC_CCx.CSIZE Required Value
TWIHS0Transmit00
TWIHS0Receive1
TWIHS1Transmit20
TWIHS1Receive3
QSPI0Transmit40
QSPI0Receive5
SPI0Transmit60
SPI0Receive7
SPI1Transmit80
SPI1Receive9
PWMTransmit100
FLEXCOM0Transmit110
FLEXCOM0Receive12
FLEXCOM1Transmit130
FLEXCOM1Receive14
FLEXCOM2Transmit150
FLEXCOM2Receive16
FLEXCOM3Transmit170
FLEXCOM3Receive18
FLEXCOM4Transmit190
FLEXCOM4Receive20
SSC0Transmit210
SSC0Receive22
SSC1Transmit230
SSC1Receive24
ADCReceive250
AESTransmit260 or 2 (refer to chapter AES, section Start Mode, subsection DMA Mode)
AESReceive27
TDESTransmit280
TDESReceive29
SHATransmit304
I2SC0Transmit310
I2SC0Receive32
I2SC1Transmit330
I2SC1Receive34
UART0Transmit350
UART0Receive36
UART1Transmit370
UART1Receive38
UART2Transmit390
UART2Receive40
UART3Transmit410
UART3Receive42
UART4Transmit430
UART4Receive44
TC0Receive450
TC1Receive46
CLASSDTransmit470
QSPI1Transmit480
QSPI1Receive49
PDMICReceive500

DMA Controller 1 manages transfers between peripherals and memory, and receives the triggers from the peripherals listed in the following table.

Table 37-3. DMA Channels Definitions (XDMAC1)
Instance NameChannel T/RInterface NumberXDMAC_CCx.CSIZE Required Value
TWIHS0Transmit00
TWIHS0Receive1
TWIHS1Transmit20
TWIHS1Receive3
QSPI0Transmit40
QSPI0Receive5
SPI0Transmit60
SPI0Receive7
SPI1Transmit80
SPI1Receive9
PWMTransmit100
FLEXCOM0Transmit110
FLEXCOM0Receive12
FLEXCOM1Transmit130
FLEXCOM1Receive14
FLEXCOM2Transmit150
FLEXCOM2Receive16
FLEXCOM3Transmit170
FLEXCOM3Receive18
FLEXCOM4Transmit190
FLEXCOM4Receive20
SSC0Transmit210
SSC0Receive22
SSC1Transmit230
SSC1Receive24
ADCReceive250
AESTransmit260 or 2 (refer to chapter AES, section Start Mode, subsection DMA Mode)
AESReceive27
TDESTransmit280
TDESReceive29
SHATransmit304
I2SC0Transmit310
I2SC0Receive32
I2SC1Transmit330
I2SC1Receive34
UART0Transmit350
UART0Receive36
UART1Transmit370
UART1Receive38
UART2Transmit390
UART2Receive40
UART3Transmit410
UART3Receive42
UART4Transmit430
UART4Receive44
TC0Receive450
TC1Receive46
CLASSDTransmit470
QSPI1Transmit480
QSPI1Receive49
PDMICReceive500