![]() |
Infineon MOTIX™ MCU TLE988x/9x Device Family SDK
|
Functions | |
sint8 | DMA_init (void) |
Initialize the DMA structure in RAM and SFRs according to the ConfigWizard settings. More... | |
void | DMA_setBasicTransfer (uint8 u8_chIdx, uint32 u32_srcAddr, uint32 u32_dstAddr, uint32 u32_transferCnt, tDMA_transferSize e_transferSize, tDMA_incrementMode e_incrementMode) |
Set up a basic transfer for the desired DMA channel in the primary structure in RAM. More... | |
void | DMA_resetChannel (uint8 u8_chIdx, uint32 u32_transferCnt) |
Reset the primary structure in RAM for a given channel and rearm it. More... | |
void | DMA_setMemSctGth (uint8 u8_chIdx, tDMA_entry *s_taskList, uint32 u32_taskCnt) |
Set up a channel to operate in Memory Scatter-Gather mode on a given task list. More... | |
void | DMA_setPerSctGth (uint8 u8_chIdx, tDMA_entry *s_taskList, uint32 u32_taskCnt) |
Set up a channel to operate in Peripheral Scatter-Gather mode on a given task list. More... | |
tDMA_entry * | DMA_setPrimaryTaskSctGth (tDMA_entry *s_primEntry, uint8 u8_chIdx, tDMA_entry *s_taskList, uint32 u32_taskCnt) |
Set up the primary task to configure the scatter-gather mode. More... | |
tDMA_entry * | DMA_setTaskSctGth (tDMA_entry *s_entry, tDMA_cycleType e_cycleType, uint8 u8_Rpower, uint32 u32_srcAddr, uint32 u32_dstAddr, uint32 u32_transferCnt, tDMA_transferSize e_transferSize, tDMA_incrementMode e_incrementMode) |
Set up a task to be used in the scatter-gather mode. More... | |
void | DMA_setCh0IntNodePtr (void) |
void | DMA_setCh1IntNodePtr (void) |
void | DMA_setCh2IntNodePtr (void) |
void | DMA_setCh3IntNodePtr (void) |
void | DMA_setCh4IntNodePtr (void) |
void | DMA_setCh5IntNodePtr (void) |
void | DMA_setCh6IntNodePtr (void) |
void | DMA_setCh7IntNodePtr (void) |
void | DMA_setErrIntNodePtr (void) |
sint8 DMA_init | ( | void | ) |
Initialize the DMA structure in RAM and SFRs according to the ConfigWizard settings.
Reset the primary structure in RAM for a given channel and rearm it.
u8_chIdx | DMA channel to be reset |
u32_transferCnt | Number of transfers |
void DMA_setBasicTransfer | ( | uint8 | u8_chIdx, |
uint32 | u32_srcAddr, | ||
uint32 | u32_dstAddr, | ||
uint32 | u32_transferCnt, | ||
tDMA_transferSize | e_transferSize, | ||
tDMA_incrementMode | e_incrementMode | ||
) |
Set up a basic transfer for the desired DMA channel in the primary structure in RAM.
u8_chIdx | DMA channel to be set up |
u32_srcAddr | Address pointing to the source location |
u32_dstAddr | Address pointing to the destination location |
u32_transferCnt | Number of transfers |
e_transferSize | Data width for each transfer, see tDMA_transferSize |
e_incrementMode | incrementing scheme used for the transfer, see tDMA_incrementMode |
void DMA_setCh0IntNodePtr | ( | void | ) |
void DMA_setCh1IntNodePtr | ( | void | ) |
void DMA_setCh2IntNodePtr | ( | void | ) |
void DMA_setCh3IntNodePtr | ( | void | ) |
void DMA_setCh4IntNodePtr | ( | void | ) |
void DMA_setCh5IntNodePtr | ( | void | ) |
void DMA_setCh6IntNodePtr | ( | void | ) |
void DMA_setCh7IntNodePtr | ( | void | ) |
void DMA_setErrIntNodePtr | ( | void | ) |
void DMA_setMemSctGth | ( | uint8 | u8_chIdx, |
tDMA_entry * | s_taskList, | ||
uint32 | u32_taskCnt | ||
) |
Set up a channel to operate in Memory Scatter-Gather mode on a given task list.
u8_chIdx | DMA channel to be set up |
s_taskList | Points to the task structure defined in RAM, see DMA_setTaskSctGth |
u32_taskCnt | Number of tasks in the s_taskList |
void DMA_setPerSctGth | ( | uint8 | u8_chIdx, |
tDMA_entry * | s_taskList, | ||
uint32 | u32_taskCnt | ||
) |
Set up a channel to operate in Peripheral Scatter-Gather mode on a given task list.
u8_chIdx | DMA channel to be set up |
s_taskList | Points to the task structure defined in RAM, see DMA_setTaskSctGth |
u32_taskCnt | Number of tasks in the s_taskList |
tDMA_entry* DMA_setPrimaryTaskSctGth | ( | tDMA_entry * | s_primEntry, |
uint8 | u8_chIdx, | ||
tDMA_entry * | s_taskList, | ||
uint32 | u32_taskCnt | ||
) |
Set up the primary task to configure the scatter-gather mode.
The DMA scather-gather mode can be used to perform multiple but different DMA transfers initiated with one trigger.
The last task can be used to self-arm this scatter-gather transfer again.
s_primEntry | Pointer to the task |
u8_chIdx | DMA channel for with the task is setup |
s_taskList | Pointer to the task list to be executed with this DMA transfer |
u32_taskCnt | Number of tasks defined in the task list |
tDMA_entry* DMA_setTaskSctGth | ( | tDMA_entry * | s_entry, |
tDMA_cycleType | e_cycleType, | ||
uint8 | u8_Rpower, | ||
uint32 | u32_srcAddr, | ||
uint32 | u32_dstAddr, | ||
uint32 | u32_transferCnt, | ||
tDMA_transferSize | e_transferSize, | ||
tDMA_incrementMode | e_incrementMode | ||
) |
Set up a task to be used in the scatter-gather mode.
s_entry | pointer to the task structure tDMA_entry |
e_cycleType | defines the type of DMA transfer to be performed, see tDMA_cycleType |
u8_Rpower | Arbitration rate, defines after how many DMA transfers (2^u8_Rpower) the controller rearbitrates |
u32_srcAddr | Address pointing to the source location |
u32_dstAddr | Address pointing to the destination location |
u32_transferCnt | Number of transfers |
e_transferSize | Data width for each transfer, see tDMA_transferSize |
e_incrementMode | Incrementing scheme used for the transfer, see tDMA_incrementMode |