LDMA_DescriptorExtend_t Struct Reference
DMA extended descriptor.
      
       #include <em_ldma.h>
      
     
| Data Fields | |
| uint32_t | structType : 2 | 
| Set to 0 to select XFER descriptor type. | |
| uint32_t | extend : 1 | 
| Extend data structure. | |
| 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. | |
| uint32_t | reserved1 : 4 | 
| Reserved | |
| uint32_t | dstIlEn : 1 | 
| Destination interleave. | |
| uint32_t | IlMode : 2 | 
| Interleave mode. | |
| uint32_t | bufferable : 1 | 
| Reserved | |
| uint32_t | reserved2 : 24 | 
| Allow AHB buffering. | |
| uint32_t | reserved3 | 
| Reserved | |
| uint32_t | IlSrc | 
| DMA rules table base address in memory. | |
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.
Field 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 | 
        Reserved
        
       
◆ reserved2
| uint32_t LDMA_DescriptorExtend_t::reserved2 | 
Allow AHB buffering.
        
       
◆ reserved3
| uint32_t LDMA_DescriptorExtend_t::reserved3 | 
        Reserved
        
       
◆ IlSrc
| uint32_t LDMA_DescriptorExtend_t::IlSrc | 
DMA rules table base address in memory.