M471M/R1/S BSP V3.01.000
The Board Support Package for M4521
Macros | Functions
pdma.h File Reference

M471M/R1/S PDMA driver header file. More...

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define PDMA_CH_MAX
 
#define PDMA_OP_STOP
 
#define PDMA_OP_BASIC
 
#define PDMA_OP_SCATTER
 
#define PDMA_WIDTH_8
 
#define PDMA_WIDTH_16
 
#define PDMA_WIDTH_32
 
#define PDMA_SAR_INC
 
#define PDMA_SAR_FIX
 
#define PDMA_DAR_INC
 
#define PDMA_DAR_FIX
 
#define PDMA_REQ_SINGLE
 
#define PDMA_REQ_BURST
 
#define PDMA_BURST_128
 
#define PDMA_BURST_64
 
#define PDMA_BURST_32
 
#define PDMA_BURST_16
 
#define PDMA_BURST_8
 
#define PDMA_BURST_4
 
#define PDMA_BURST_2
 
#define PDMA_BURST_1
 
#define PDMA_SPI0_TX
 
#define PDMA_SPI1_TX
 
#define PDMA_UART0_TX
 
#define PDMA_UART1_TX
 
#define PDMA_UART2_TX
 
#define PDMA_UART3_TX
 
#define PDMA_ADC_RX
 
#define PDMA_PWM0_P1_RX
 
#define PDMA_PWM0_P2_RX
 
#define PDMA_PWM0_P3_RX
 
#define PDMA_PWM1_P1_RX
 
#define PDMA_PWM1_P2_RX
 
#define PDMA_PWM1_P3_RX
 
#define PDMA_SPI0_RX
 
#define PDMA_SPI1_RX
 
#define PDMA_UART0_RX
 
#define PDMA_UART1_RX
 
#define PDMA_UART2_RX
 
#define PDMA_UART3_RX
 
#define PDMA_MEM
 
#define PDMA_INT_TRANS_DONE
 
#define PDMA_INT_TEMPTY
 
#define PDMA_INT_TIMEOUT
 
#define PDMA_GET_INT_STATUS()   ((uint32_t)(PDMA->INTSTS))
 Get PDMA Interrupt Status. More...
 
#define PDMA_GET_TD_STS()   ((uint32_t)(PDMA->TDSTS))
 Get Transfer Done Interrupt Status. More...
 
#define PDMA_CLR_TD_FLAG(u32Mask)   ((uint32_t)(PDMA->TDSTS = (u32Mask)))
 Clear Transfer Done Interrupt Status. More...
 
#define PDMA_GET_ABORT_STS()   ((uint32_t)(PDMA->ABTSTS))
 Get Target Abort Interrupt Status. More...
 
#define PDMA_CLR_ABORT_FLAG(u32Mask)   ((uint32_t)(PDMA->ABTSTS = (u32Mask)))
 Clear Target Abort Interrupt Status. More...
 
#define PDMA_GET_EMPTY_STS()   ((uint32_t)(PDMA->SCATSTS))
 Get Scatter-Gather Table Empty Interrupt Status. More...
 
#define PDMA_CLR_EMPTY_FLAG(u32Mask)   ((uint32_t)(PDMA->SCATSTS = (u32Mask)))
 Clear Scatter-Gather Table Empty Interrupt Status. More...
 
#define PDMA_CLR_TMOUT_FLAG(u32Ch)   ((uint32_t)(PDMA->INTSTS = (1 << ((u32Ch) + 8))))
 Clear Timeout Interrupt Status. More...
 
#define PDMA_IS_CH_BUSY(u32Ch)   ((uint32_t)(PDMA->TRGSTS & (1 << (u32Ch)))? 1 : 0)
 Check Channel Status. More...
 
#define PDMA_SET_SRC_ADDR(u32Ch, u32Addr)   ((uint32_t)(PDMA->DSCT[(u32Ch)].SA = (u32Addr)))
 Set Source Address. More...
 
#define PDMA_SET_DST_ADDR(u32Ch, u32Addr)   ((uint32_t)(PDMA->DSCT[(u32Ch)].DA = (u32Addr)))
 Set Destination Address. More...
 
#define PDMA_SET_TRANS_CNT(u32Ch, u32TransCount)   ((uint32_t)(PDMA->DSCT[(u32Ch)].CTL=(PDMA->DSCT[(u32Ch)].CTL&~PDMA_DSCT_CTL_TXCNT_Msk)|(((u32TransCount)-1) << PDMA_DSCT_CTL_TXCNT_Pos)))
 Set Transfer Count. More...
 
#define PDMA_SET_SCATTER_DESC(u32Ch, u32Addr)   ((uint32_t)(PDMA->DSCT[(u32Ch)].NEXT = (u32Addr) - (PDMA->SCATBA)))
 Set Scatter-gather descriptor Address. More...
 
#define PDMA_STOP(u32Ch)   ((uint32_t)(PDMA->STOP = (1 << (u32Ch))))
 Stop the channel. More...
 

Functions

void PDMA_Open (uint32_t u32Mask)
 PDMA Open. More...
 
void PDMA_Close (void)
 PDMA Close. More...
 
void PDMA_SetTransferCnt (uint32_t u32Ch, uint32_t u32Width, uint32_t u32TransCount)
 Set PDMA Transfer Count. More...
 
void PDMA_SetTransferAddr (uint32_t u32Ch, uint32_t u32SrcAddr, uint32_t u32SrcCtrl, uint32_t u32DstAddr, uint32_t u32DstCtrl)
 Set PDMA Transfer Address. More...
 
void PDMA_SetTransferMode (uint32_t u32Ch, uint32_t u32Peripheral, uint32_t u32ScatterEn, uint32_t u32DescAddr)
 Set PDMA Transfer Mode. More...
 
void PDMA_SetBurstType (uint32_t u32Ch, uint32_t u32BurstType, uint32_t u32BurstSize)
 Set PDMA Burst Type and Size. More...
 
void PDMA_EnableTimeout (uint32_t u32Mask)
 Enable timeout function. More...
 
void PDMA_DisableTimeout (uint32_t u32Mask)
 Disable timeout function. More...
 
void PDMA_SetTimeOut (uint32_t u32Ch, uint32_t u32OnOff, uint32_t u32TimeOutCnt)
 Set PDMA Timeout Count. More...
 
void PDMA_Trigger (uint32_t u32Ch)
 Trigger PDMA. More...
 
void PDMA_EnableInt (uint32_t u32Ch, uint32_t u32Mask)
 Enable Interrupt. More...
 
void PDMA_DisableInt (uint32_t u32Ch, uint32_t u32Mask)
 Disable Interrupt. More...
 

Detailed Description

M471M/R1/S PDMA driver header file.

SPDX-License-Identifier: Apache-2.0

Definition in file pdma.h.