You are viewing documentation for version:
DMA extended descriptor. 
The extended descriptor adds additional fields for the extended features available on the MMLDMA peripheral: destination interleaving and bufferable. The same three different DMA descriptors supported by the LDMA DMA controller are available. Each consists of seven WORDs (instead of four in non-extended descriptors) which map directly onto HW control registers for a given DMA channel. The three descriptor types are XFER, SYNC and WRI. But the extended fields are true only for XFER. The extended fields are the following: 
      +-          +- CTRL
      | Original  |  SRC
      | Structure |  DST
 Extended | +- LINK Structure | XCTRL | Reserved for future usage +- ILSRC
Refer to the reference manual for further information. 
Public Attributes#
uint32_t
Set to 0 to select XFER descriptor type. 
uint32_t
DMA transfer trigger during LINKLOAD. 
uint32_t
Transfer count minus one. 
uint32_t
Enable byte swapping transfers. 
uint32_t
Number of unit transfers per arbitration cycle. 
uint32_t
Generate interrupt when done. 
uint32_t
Block or cycle transfer selector. 
uint32_t
Source address increment unit size. 
uint32_t
Destination address increment unit size. 
uint32_t
Destination addressing mode. 
uint32_t
Select absolute or relative link address. 
uint32_t
Enable LINKLOAD when transfer is done. 
int32_t
Address of next (linked) descriptor. 
uint32_t
DMA rules table base address in memory. 
Public Attribute Documentation#
structType#
uint32_t LDMA_DescriptorExtend_t::structType
Set to 0 to select XFER descriptor type. 
extend#
uint32_t LDMA_DescriptorExtend_t::extend
Extend data structure. 
structReq#
uint32_t LDMA_DescriptorExtend_t::structReq
DMA transfer trigger during LINKLOAD. 
xferCnt#
uint32_t LDMA_DescriptorExtend_t::xferCnt
Transfer count minus one. 
byteSwap#
uint32_t LDMA_DescriptorExtend_t::byteSwap
Enable byte swapping transfers. 
blockSize#
uint32_t LDMA_DescriptorExtend_t::blockSize
Number of unit transfers per arbitration cycle. 
doneIfs#
uint32_t LDMA_DescriptorExtend_t::doneIfs
Generate interrupt when done. 
reqMode#
uint32_t LDMA_DescriptorExtend_t::reqMode
Block or cycle transfer selector. 
decLoopCnt#
uint32_t LDMA_DescriptorExtend_t::decLoopCnt
Enable looped transfers. 
ignoreSrec#
uint32_t LDMA_DescriptorExtend_t::ignoreSrec
Ignore single requests. 
srcInc#
uint32_t LDMA_DescriptorExtend_t::srcInc
Source address increment unit size. 
size#
uint32_t LDMA_DescriptorExtend_t::size
DMA transfer unit size. 
dstInc#
uint32_t LDMA_DescriptorExtend_t::dstInc
Destination address increment unit size. 
srcAddrMode#
uint32_t LDMA_DescriptorExtend_t::srcAddrMode
Source addressing mode. 
dstAddrMode#
uint32_t LDMA_DescriptorExtend_t::dstAddrMode
Destination addressing mode. 
srcAddr#
uint32_t LDMA_DescriptorExtend_t::srcAddr
DMA source address. 
dstAddr#
uint32_t LDMA_DescriptorExtend_t::dstAddr
DMA destination address. 
linkMode#
uint32_t LDMA_DescriptorExtend_t::linkMode
Select absolute or relative link address. 
link#
uint32_t LDMA_DescriptorExtend_t::link
Enable LINKLOAD when transfer is done. 
linkAddr#
int32_t LDMA_DescriptorExtend_t::linkAddr
Address of next (linked) descriptor. 
reserved1#
uint32_t LDMA_DescriptorExtend_t::reserved1
Reserved 
dstIlEn#
uint32_t LDMA_DescriptorExtend_t::dstIlEn
Destination interleave. 
IlMode#
uint32_t LDMA_DescriptorExtend_t::IlMode
Interleave mode. 
bufferable#
uint32_t LDMA_DescriptorExtend_t::bufferable
Allow AHB buffering. 
reserved2#
uint32_t LDMA_DescriptorExtend_t::reserved2
Reserved 
reserved3#
uint32_t LDMA_DescriptorExtend_t::reserved3
Reserved 
IlSrc#
uint32_t LDMA_DescriptorExtend_t::IlSrc
DMA rules table base address in memory.