DMA descriptor.
The LDMA DMA controller supports three different DMA descriptors. Each consists of four WORDs which map directly onto HW control registers for a given DMA channel. The three descriptor types are XFER, SYNC and WRI. Refer to the reference manual for further information.
Public Attributes#
Set to 0 to select XFER descriptor type.
Reserved.
DMA transfer trigger during LINKLOAD.
Transfer count minus one.
Enable byte swapping transfers.
Number of unit transfers per arbitration cycle.
Generate interrupt when done.
Block or cycle transfer selector.
Enable looped transfers.
Ignore single requests.
Source address increment unit size.
DMA transfer unit size.
Destination address increment unit size.
Source addressing mode.
Destination addressing mode.
DMA source address.
DMA destination address.
Select absolute or relative link address.
Enable LINKLOAD when transfer is done.
Address of next (linked) descriptor.
TRANSFER DMA descriptor, this is the only descriptor type which can be used to start a DMA transfer.
Set bits in LDMA_CTRL.SYNCTRIG register.
Clear bits in LDMA_CTRL.SYNCTRIG register.
Reserved.
Sync trigger match value.
Sync trigger match enable.
Reserved.
SYNCHRONIZE DMA descriptor, used for intra channel transfer synchronization.
Data to be written at dstAddr.
WRITE DMA descriptor, used for write immediate operations.
Public Attribute Documentation#
structType#
uint32_t LDMA_Descriptor_t::structType
Set to 0 to select XFER descriptor type.
Set to 2 to select WRITE descriptor type.
Set to 1 to select SYNC descriptor type.
904
of file platform/emlib/inc/em_ldma.h
reserved0#
uint32_t LDMA_Descriptor_t::reserved0
Reserved.
905
of file platform/emlib/inc/em_ldma.h
structReq#
uint32_t LDMA_Descriptor_t::structReq
DMA transfer trigger during LINKLOAD.
906
of file platform/emlib/inc/em_ldma.h
xferCnt#
uint32_t LDMA_Descriptor_t::xferCnt
Transfer count minus one.
907
of file platform/emlib/inc/em_ldma.h
byteSwap#
uint32_t LDMA_Descriptor_t::byteSwap
Enable byte swapping transfers.
908
of file platform/emlib/inc/em_ldma.h
blockSize#
uint32_t LDMA_Descriptor_t::blockSize
Number of unit transfers per arbitration cycle.
909
of file platform/emlib/inc/em_ldma.h
doneIfs#
uint32_t LDMA_Descriptor_t::doneIfs
Generate interrupt when done.
910
of file platform/emlib/inc/em_ldma.h
reqMode#
uint32_t LDMA_Descriptor_t::reqMode
Block or cycle transfer selector.
911
of file platform/emlib/inc/em_ldma.h
decLoopCnt#
uint32_t LDMA_Descriptor_t::decLoopCnt
Enable looped transfers.
912
of file platform/emlib/inc/em_ldma.h
ignoreSrec#
uint32_t LDMA_Descriptor_t::ignoreSrec
Ignore single requests.
913
of file platform/emlib/inc/em_ldma.h
srcInc#
uint32_t LDMA_Descriptor_t::srcInc
Source address increment unit size.
914
of file platform/emlib/inc/em_ldma.h
size#
uint32_t LDMA_Descriptor_t::size
DMA transfer unit size.
915
of file platform/emlib/inc/em_ldma.h
dstInc#
uint32_t LDMA_Descriptor_t::dstInc
Destination address increment unit size.
916
of file platform/emlib/inc/em_ldma.h
srcAddrMode#
uint32_t LDMA_Descriptor_t::srcAddrMode
Source addressing mode.
917
of file platform/emlib/inc/em_ldma.h
dstAddrMode#
uint32_t LDMA_Descriptor_t::dstAddrMode
Destination addressing mode.
918
of file platform/emlib/inc/em_ldma.h
srcAddr#
uint32_t LDMA_Descriptor_t::srcAddr
DMA source address.
920
of file platform/emlib/inc/em_ldma.h
dstAddr#
uint32_t LDMA_Descriptor_t::dstAddr
DMA destination address.
DMA write destination address.
921
of file platform/emlib/inc/em_ldma.h
linkMode#
uint32_t LDMA_Descriptor_t::linkMode
Select absolute or relative link address.
923
of file platform/emlib/inc/em_ldma.h
link#
uint32_t LDMA_Descriptor_t::link
Enable LINKLOAD when transfer is done.
924
of file platform/emlib/inc/em_ldma.h
linkAddr#
int32_t LDMA_Descriptor_t::linkAddr
Address of next (linked) descriptor.
925
of file platform/emlib/inc/em_ldma.h
xfer#
struct LDMA_Descriptor_t::@2 LDMA_Descriptor_t::xfer
TRANSFER DMA descriptor, this is the only descriptor type which can be used to start a DMA transfer.
926
of file platform/emlib/inc/em_ldma.h
syncSet#
uint32_t LDMA_Descriptor_t::syncSet
Set bits in LDMA_CTRL.SYNCTRIG register.
948
of file platform/emlib/inc/em_ldma.h
syncClr#
uint32_t LDMA_Descriptor_t::syncClr
Clear bits in LDMA_CTRL.SYNCTRIG register.
949
of file platform/emlib/inc/em_ldma.h
reserved1#
uint32_t LDMA_Descriptor_t::reserved1
Reserved.
950
of file platform/emlib/inc/em_ldma.h
matchVal#
uint32_t LDMA_Descriptor_t::matchVal
Sync trigger match value.
955
of file platform/emlib/inc/em_ldma.h
matchEn#
uint32_t LDMA_Descriptor_t::matchEn
Sync trigger match enable.
956
of file platform/emlib/inc/em_ldma.h
reserved2#
uint32_t LDMA_Descriptor_t::reserved2
Reserved.
958
of file platform/emlib/inc/em_ldma.h
sync#
struct LDMA_Descriptor_t::@3 LDMA_Descriptor_t::sync
SYNCHRONIZE DMA descriptor, used for intra channel transfer synchronization.
963
of file platform/emlib/inc/em_ldma.h
immVal#
uint32_t LDMA_Descriptor_t::immVal
Data to be written at dstAddr.
983
of file platform/emlib/inc/em_ldma.h
wri#
struct LDMA_Descriptor_t::@4 LDMA_Descriptor_t::wri
WRITE DMA descriptor, used for write immediate operations.
989
of file platform/emlib/inc/em_ldma.h