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

Extend data structure.

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

Enable looped transfers.

uint32_t

Ignore single requests.

uint32_t

Source address increment unit size.

uint32_t

DMA transfer unit size.

uint32_t

Destination address increment unit size.

uint32_t

Source addressing mode.

uint32_t

Destination addressing mode.

uint32_t

DMA source address.

uint32_t

DMA destination address.

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

Reserved

uint32_t

Destination interleave.

uint32_t

Interleave mode.

uint32_t

Allow AHB buffering.

uint32_t

Reserved

uint32_t

Reserved

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.


Definition at line 1011 of file platform/emlib/inc/em_ldma.h

extend#

uint32_t LDMA_DescriptorExtend_t::extend

Extend data structure.


Definition at line 1012 of file platform/emlib/inc/em_ldma.h

structReq#

uint32_t LDMA_DescriptorExtend_t::structReq

DMA transfer trigger during LINKLOAD.


Definition at line 1013 of file platform/emlib/inc/em_ldma.h

xferCnt#

uint32_t LDMA_DescriptorExtend_t::xferCnt

Transfer count minus one.


Definition at line 1014 of file platform/emlib/inc/em_ldma.h

byteSwap#

uint32_t LDMA_DescriptorExtend_t::byteSwap

Enable byte swapping transfers.


Definition at line 1015 of file platform/emlib/inc/em_ldma.h

blockSize#

uint32_t LDMA_DescriptorExtend_t::blockSize

Number of unit transfers per arbitration cycle.


Definition at line 1016 of file platform/emlib/inc/em_ldma.h

doneIfs#

uint32_t LDMA_DescriptorExtend_t::doneIfs

Generate interrupt when done.


Definition at line 1017 of file platform/emlib/inc/em_ldma.h

reqMode#

uint32_t LDMA_DescriptorExtend_t::reqMode

Block or cycle transfer selector.


Definition at line 1018 of file platform/emlib/inc/em_ldma.h

decLoopCnt#

uint32_t LDMA_DescriptorExtend_t::decLoopCnt

Enable looped transfers.


Definition at line 1019 of file platform/emlib/inc/em_ldma.h

ignoreSrec#

uint32_t LDMA_DescriptorExtend_t::ignoreSrec

Ignore single requests.


Definition at line 1020 of file platform/emlib/inc/em_ldma.h

srcInc#

uint32_t LDMA_DescriptorExtend_t::srcInc

Source address increment unit size.


Definition at line 1021 of file platform/emlib/inc/em_ldma.h

size#

uint32_t LDMA_DescriptorExtend_t::size

DMA transfer unit size.


Definition at line 1022 of file platform/emlib/inc/em_ldma.h

dstInc#

uint32_t LDMA_DescriptorExtend_t::dstInc

Destination address increment unit size.


Definition at line 1023 of file platform/emlib/inc/em_ldma.h

srcAddrMode#

uint32_t LDMA_DescriptorExtend_t::srcAddrMode

Source addressing mode.


Definition at line 1024 of file platform/emlib/inc/em_ldma.h

dstAddrMode#

uint32_t LDMA_DescriptorExtend_t::dstAddrMode

Destination addressing mode.


Definition at line 1025 of file platform/emlib/inc/em_ldma.h

srcAddr#

uint32_t LDMA_DescriptorExtend_t::srcAddr

DMA source address.


Definition at line 1027 of file platform/emlib/inc/em_ldma.h

dstAddr#

uint32_t LDMA_DescriptorExtend_t::dstAddr

DMA destination address.


Definition at line 1028 of file platform/emlib/inc/em_ldma.h

linkMode#

uint32_t LDMA_DescriptorExtend_t::linkMode

Select absolute or relative link address.


Definition at line 1030 of file platform/emlib/inc/em_ldma.h

link#

uint32_t LDMA_DescriptorExtend_t::link

Enable LINKLOAD when transfer is done.


Definition at line 1031 of file platform/emlib/inc/em_ldma.h

linkAddr#

int32_t LDMA_DescriptorExtend_t::linkAddr

Address of next (linked) descriptor.


Definition at line 1032 of file platform/emlib/inc/em_ldma.h

reserved1#

uint32_t LDMA_DescriptorExtend_t::reserved1

Reserved


Definition at line 1034 of file platform/emlib/inc/em_ldma.h

dstIlEn#

uint32_t LDMA_DescriptorExtend_t::dstIlEn

Destination interleave.


Definition at line 1035 of file platform/emlib/inc/em_ldma.h

IlMode#

uint32_t LDMA_DescriptorExtend_t::IlMode

Interleave mode.


Definition at line 1036 of file platform/emlib/inc/em_ldma.h

bufferable#

uint32_t LDMA_DescriptorExtend_t::bufferable

Allow AHB buffering.


Definition at line 1037 of file platform/emlib/inc/em_ldma.h

reserved2#

uint32_t LDMA_DescriptorExtend_t::reserved2

Reserved


Definition at line 1038 of file platform/emlib/inc/em_ldma.h

reserved3#

uint32_t LDMA_DescriptorExtend_t::reserved3

Reserved


Definition at line 1040 of file platform/emlib/inc/em_ldma.h

IlSrc#

uint32_t LDMA_DescriptorExtend_t::IlSrc

DMA rules table base address in memory.


Definition at line 1041 of file platform/emlib/inc/em_ldma.h