The GPT can produce DMA trigger events through the event handler. Single or burst requests can be passed to the µDMA controller by selecting the trigger source for µDMA channels through the event fabric. Each timer only produces one signal per A and B, but this signal can be selected as either single or burst in the event module. The DMA done interrupt is routed back to the timer module that originated the trigger.
Use the following procedure to configure µDMA triggers by GPT events:
- Configure the GPT operation.
- Configure the GPT:DMAEV register to enable the appropriate timer event to DMA. The application can select a match, capture, or time-out event for each timer.
- Configure the event fabric (see Chapter 5) to select the appropriate timer. The event fabric
supports five channels for the GPT DMA event, out of which four are dedicated to
the GPT block. These dedicated channels are: 9, 10, 11, and 12. Single requests
and burst requests are supported on channels 9 through 12 for GPT DMA events.
The fifth supported channel is 14, which is configurable for GPT support and
handles only burst requests. The configuration is done through the
EVENT:UDMACHcrSEL register where c is the channel number and r is
either the S (single) or B (burst) option. Channel 14 can be configured using
the EVENT:UDMACH14BSEL register. Each timer produces only one signal per A and
B, but this signal can be selected as either single or burst in the event
module.
- Enable the GPT.
- The DMA done interrupt is routed back to the timer module that originated the trigger. The GPT:RIS DMAnRIS register bit gives the DMA transfer completed information.