LDMA_Descriptor_t Union Reference
DMA descriptor.
#include <em_ldma.h>
Data Fields |
|
struct { | |
uint32_t structType : 2 | |
Set to 0 to select XFER descriptor type.
|
|
uint32_t reserved0 : 1 | |
Reserved
|
|
uint32_t structReq : 1 | |
DMA transfer trigger during LINKLOAD.
|
|
uint32_t xferCnt : 11 | |
Transfer count minus one.
|
|
uint32_t byteSwap : 1 | |
Enable byte swapping transfers.
|
|
uint32_t blockSize : 4 | |
Number of unit transfers per arbitration cycle.
|
|
uint32_t doneIfs : 1 | |
Generate interrupt when done.
|
|
uint32_t reqMode : 1 | |
Block or cycle transfer selector.
|
|
uint32_t decLoopCnt : 1 | |
Enable looped transfers.
|
|
uint32_t ignoreSrec : 1 | |
Ignore single requests.
|
|
uint32_t srcInc : 2 | |
Source address increment unit size.
|
|
uint32_t size : 2 | |
DMA transfer unit size.
|
|
uint32_t dstInc : 2 | |
Destination address increment unit size.
|
|
uint32_t srcAddrMode : 1 | |
Source addressing mode.
|
|
uint32_t dstAddrMode : 1 | |
Destination addressing mode.
|
|
uint32_t srcAddr | |
DMA source address.
|
|
uint32_t dstAddr | |
DMA destination address.
|
|
uint32_t linkMode : 1 | |
Select absolute or relative link address.
|
|
uint32_t link : 1 | |
Enable LINKLOAD when transfer is done.
|
|
int32_t linkAddr : 30 | |
Address of next (linked) descriptor.
|
|
} | xfer |
TRANSFER DMA descriptor, this is the only descriptor type which can be used to start a DMA transfer.
|
|
struct { | |
uint32_t structType : 2 | |
Set to 1 to select SYNC descriptor type.
|
|
uint32_t reserved0 : 1 | |
Reserved.
|
|
uint32_t structReq : 1 | |
DMA transfer trigger during LINKLOAD.
|
|
uint32_t xferCnt : 11 | |
Transfer count minus one.
|
|
uint32_t byteSwap : 1 | |
Enable byte swapping transfers.
|
|
uint32_t blockSize : 4 | |
Number of unit transfers per arbitration cycle.
|
|
uint32_t doneIfs : 1 | |
Generate interrupt when done.
|
|
uint32_t reqMode : 1 | |
Block or cycle transfer selector.
|
|
uint32_t decLoopCnt : 1 | |
Enable looped transfers.
|
|
uint32_t ignoreSrec : 1 | |
Ignore single requests.
|
|
uint32_t srcInc : 2 | |
Source address increment unit size.
|
|
uint32_t size : 2 | |
DMA transfer unit size.
|
|
uint32_t dstInc : 2 | |
Destination address increment unit size.
|
|
uint32_t srcAddrMode : 1 | |
Source addressing mode.
|
|
uint32_t dstAddrMode : 1 | |
Destination addressing mode.
|
|
uint32_t syncSet : 8 | |
Set bits in LDMA_CTRL.SYNCTRIG register.
|
|
uint32_t syncClr : 8 | |
Clear bits in LDMA_CTRL.SYNCTRIG register.
|
|
uint32_t reserved3 : 16 | |
Reserved.
|
|
uint32_t matchVal : 8 | |
Sync trigger match value.
|
|
uint32_t matchEn : 8 | |
Sync trigger match enable.
|
|
uint32_t reserved4 : 16 | |
Reserved.
|
|
uint32_t linkMode : 1 | |
Select absolute or relative link address.
|
|
uint32_t link : 1 | |
Enable LINKLOAD when transfer is done.
|
|
int32_t linkAddr : 30 | |
Address of next (linked) descriptor.
|
|
} | sync |
SYNCHRONIZE DMA descriptor, used for intra channel transfer synchronization.
|
|
struct { | |
uint32_t structType : 2 | |
Set to 2 to select WRITE descriptor type.
|
|
uint32_t reserved0 : 1 | |
Reserved.
|
|
uint32_t structReq : 1 | |
DMA transfer trigger during LINKLOAD.
|
|
uint32_t xferCnt : 11 | |
Transfer count minus one.
|
|
uint32_t byteSwap : 1 | |
Enable byte swapping transfers.
|
|
uint32_t blockSize : 4 | |
Number of unit transfers per arbitration cycle.
|
|
uint32_t doneIfs : 1 | |
Generate interrupt when done.
|
|
uint32_t reqMode : 1 | |
Block or cycle transfer selector.
|
|
uint32_t decLoopCnt : 1 | |
Enable looped transfers.
|
|
uint32_t ignoreSrec : 1 | |
Ignore single requests.
|
|
uint32_t srcInc : 2 | |