SLAU846B June 2023 – November 2024 MSPM0G1105 , MSPM0G1106 , MSPM0G1107 , MSPM0G1505 , MSPM0G1506 , MSPM0G1507 , MSPM0G3105 , MSPM0G3106 , MSPM0G3107 , MSPM0G3505 , MSPM0G3506 , MSPM0G3507
DMA_TRIG1 and DMA_TRIG0 registers are used to setup the trigger signaling for the DMA. This can be setup in a flexible way to trigger the DMA for Controller or Target and receive or transmit events with the following four trigger conditions:
IIDX STAT | Name | Description |
---|---|---|
0x01 | MRXFIFOTRG | Controller receive FIFO trigger. Trigger when RX FIFO contains >= defined bytes |
0x02 | MTXFIFOTRG | Controller transmit FIFO trigger. Trigger when Transmit FIFO contains <= defined bytes |
0x03 | SRXFIFOTRG | Target receive FIFO trigger. Trigger when RX FIFO contains >= defined bytes |
0x04 | STXFIFOTRG | Target transmit FIFO trigger. Trigger when Transmit FIFO contains <= defined bytes |
The DMA trigger event configuration is managed with the DMA_TRIG1 and DMA_TRIG0 event management registers. See Section 8.2.5 for guidance on configuring the Event registers and Section 8.1.3.2 for on how DMA trigger event works. DMA_TRIG1 and DMA_TRIG0 are two event management registers that correspond to two DMA channels.
As shown in Figure 20-17, each DMA channel can be triggered by any of the conditions listed in Table 20-76 and it can generate either the controller DMA done signal or target DMA done signal.
For example, the user can configure the DMA_TRIG1 trigger using MTXFIFOTRG and the DMA_TRIG0 trigger using SRXFIFOTRG. When the Channel 1 DMA status changes to done, the MDMA_DONE_TX and MDMA_DONE_RX interrupts will set, and when the Channel 2 DMA status change to done, the SDMA_DONE_TX and SDMA_DONE_RX interrupts will set.