SPRUHZ7K August 2015 – April 2024 AM5706 , AM5708 , AM5716 , AM5718 , AM5718-HIREL
Although the DMA operation includes four modes (DMA modes 0 through 3), the information in Table 24-94, UART Hardware Requests, assumes that mode 1 is used. (Mode 2 and mode 3 are legacy modes that use only one DMA request for each module.)
In mode 2, the remaining DMA request is used for RX. In mode 3, the remaining DMA request is used for TX.
DMA requests in mode 2 and mode 3 use the UARTi_DREQ_TX signals (where i = 1 to 10).
The UARTi_DREQ_RX signals are not used by the module in mode 2 and mode 3:
The DMA mode and signals usage can be selected as follows:
For example:
If the FIFOs are disabled (the UARTi.UART_FCR[0] FIFO_EN bit is set to 0), the DMA occurs in single-character transfers.
When DMA mode 0 is programmed, the signals associated with DMA operation are not active.
Depending on UARTi.UART_MDR3[2] SET_DMA_TX_THRESHOLD, the threshold can be programmed different ways:
The threshold value will be the value of the TX_DMA_THRESHOLD register. If SET_TX_DMA_THRESHOLD + TX trigger spaces 64, then the default method of threshold is used: threshold value = TX FIFO size.
The threshold value = TX FIFO size TX trigger space. The TX DMA line is asserted if the TX FIFO level is lower then the threshold. It remains asserted until TX trigger spaces number of bytes are written into the FIFO. The DMA line is then deasserted and the FIFO level is compared with the threshold value.