| axivdma Vitis Drivers API Documentation

- Overview
- Data Structures
- APIs
- File List
- Examples

Data Structures | Macros | Typedefs | Functions
xaxivdma.h File Reference

## Data Structures
struct | XAxiVdma_Config
| This typedef contains the hardware configuration information for a VDMA device. More...
struct | XAxiVdma_DmaSetup
| The XAxiVdma_DmaSetup structure contains all the necessary information to start a frame write or read. More...
struct | XAxiVdma_FrameCounter
| The XAxiVdmaFrameCounter structure contains the interrupt threshold settings for both the transmit and the receive channel. More...
struct | XAxiVdma_ChannelCallBack
| Channel callback functions. More...
struct | XAxiVdma
| The XAxiVdma driver instance data. More...

## Macros
#define | XAXIVDMA_WRITE 1
| VDMA data transfer direction. More...
#define | XAXIVDMA_READ 2
| DMA transfer from memory. More...
#define | XAXIVDMA_CHAN_FSYNC 0
| Frame Sync Source Selection. More...
#define | XAXIVDMA_EXTERNAL_GENLOCK 0
| GenLock Source Selection. More...
#define | XAXIVDMA_GENLOCK_MASTER 0
| GenLock Mode Constants. More...
#define | XAXIVDMA_HANDLER_GENERAL 1
| Interrupt type for setting up callback. More...
#define | XAXIVDMA_HANDLER_ERROR 2
| Error Interrupt Type. More...
#define | XAXIVDMA_DEVICE_READY 0x11111111
| Flag to signal that device is ready to be used. More...
#define | XAXIVDMA_ENABLE_DBG_THRESHOLD_REG 0x01
| Debug Configuration Parameter Constants (C_ENABLE_DEBUG_INFO_*) More...

## Typedefs
typedef void(* | XAxiVdma_CallBack )(void *CallBackRef, u32 InterruptTypes)
| Callback type for general interrupts. More...
typedef void(* | XAxiVdma_ErrorCallBack )(void *CallBackRef, u32 ErrorMask)
| Callback type for Error interrupt. More...

## Functions
XAxiVdma_Config * | XAxiVdma_LookupConfig (u16 DeviceId)
| Look up the hardware configuration for a device instance. More...
int | XAxiVdma_CfgInitialize (XAxiVdma *InstancePtr, XAxiVdma_Config *CfgPtr, UINTPTR EffectiveAddr)
| Initialize the driver with hardware configuration. More...
void | XAxiVdma_Reset (XAxiVdma *InstancePtr, u16 Direction)
| This function resets one DMA channel. More...
int | XAxiVdma_ResetNotDone (XAxiVdma *InstancePtr, u16 Direction)
| This function checks one DMA channel for reset completion. More...
int | XAxiVdma_IsBusy (XAxiVdma *InstancePtr, u16 Direction)
| Check whether a DMA channel is busy. More...
u32 | XAxiVdma_CurrFrameStore (XAxiVdma *InstancePtr, u16 Direction)
| Get the current frame that hardware is working on. More...
u32 | XAxiVdma_GetVersion (XAxiVdma *InstancePtr)
| Get the version of the hardware. More...
u32 | XAxiVdma_GetStatus (XAxiVdma *InstancePtr, u16 Direction)
| Get the status of a channel. More...
int | XAxiVdma_SetLineBufThreshold (XAxiVdma *InstancePtr, int LineBufThreshold, u16 Direction)
| Configure Line Buffer Threshold. More...
int | XAxiVdma_StartParking (XAxiVdma *InstancePtr, int FrameIndex, u16 Direction)
| Start parking mode on a certain frame. More...
void | XAxiVdma_StopParking (XAxiVdma *InstancePtr, u16 Direction)
| Exit parking mode, the channel will return to circular buffer mode. More...
void | XAxiVdma_StartFrmCntEnable (XAxiVdma *InstancePtr, u16 Direction)
| Start frame count enable on one channel. More...
void | XAxiVdma_IntrEnable (XAxiVdma *InstancePtr, u32 IntrType, u16 Direction)
| Enable specific interrupts for a channel. More...
void | XAxiVdma_IntrDisable (XAxiVdma *InstancePtr, u32 IntrType, u16 Direction)
| Disable specific interrupts for a channel. More...
u32 | XAxiVdma_IntrGetPending (XAxiVdma *InstancePtr, u16 Direction)
| Get the pending interrupts of a channel. More...
void | XAxiVdma_IntrClear (XAxiVdma *InstancePtr, u32 IntrType, u16 Direction)
| Clear the pending interrupts specified by the bit mask. More...
int | XAxiVdma_SetBdAddrs (XAxiVdma *InstancePtr, u32 BdAddrPhys, u32 BdAddrVirt, int NumBds, u16 Direction)
| Set BD addresses to be different. More...
XAxiVdma_Channel * | XAxiVdma_GetChannel (XAxiVdma *InstancePtr, u16 Direction)
| Get a channel. More...
int | XAxiVdma_SetFrmStore (XAxiVdma *InstancePtr, u8 FrmStoreNum, u16 Direction)
| Set the number of frame store buffers to use. More...
void | XAxiVdma_GetFrmStore (XAxiVdma *InstancePtr, u8 *FrmStoreNum, u16 Direction)
| Get the number of frame store buffers to use. More...
int | XAxiVdma_FsyncSrcSelect (XAxiVdma *InstancePtr, u32 Source, u16 Direction)
| Configure Frame Sync Source and valid only when C_USE_FSYNC is enabled. More...
int | XAxiVdma_GenLockSourceSelect (XAxiVdma *InstancePtr, u32 Source, u16 Direction)
| Configure Gen Lock Source. More...
int | XAxiVdma_GetDmaChannelErrors (XAxiVdma *InstancePtr, u16 Direction)
| Check for DMA Channel Errors. More...
int | XAxiVdma_ClearDmaChannelErrors (XAxiVdma *InstancePtr, u16 Direction, u32 ErrorMask)
| Clear DMA Channel Errors. More...
int | XAxiVdma_MaskS2MMErrIntr (XAxiVdma *InstancePtr, u32 ErrorMask, u16 Direction)
| Masks the S2MM error interrupt for the provided error mask value. More...
int | XAxiVdma_StartWriteFrame (XAxiVdma *InstancePtr, XAxiVdma_DmaSetup *DmaConfigPtr)
| Start a write operation. More...
int | XAxiVdma_StartReadFrame (XAxiVdma *InstancePtr, XAxiVdma_DmaSetup *DmaConfigPtr)
| Start a read operation. More...
int | XAxiVdma_DmaConfig (XAxiVdma *InstancePtr, u16 Direction, XAxiVdma_DmaSetup *DmaConfigPtr)
| Configure one DMA channel using the configuration structure. More...
int | XAxiVdma_DmaSetBufferAddr (XAxiVdma *InstancePtr, u16 Direction, UINTPTR *BufferAddrSet)
| Configure buffer addresses for one DMA channel. More...
int | XAxiVdma_DmaStart (XAxiVdma *InstancePtr, u16 Direction)
| Start one DMA channel. More...
void | XAxiVdma_DmaStop (XAxiVdma *InstancePtr, u16 Direction)
| Stop one DMA channel. More...
void | XAxiVdma_DmaRegisterDump (XAxiVdma *InstancePtr, u16 Direction)
| Dump registers of one DMA channel. More...
int | XAxiVdma_SetFrameCounter (XAxiVdma *InstancePtr, XAxiVdma_FrameCounter *CfgPtr)
| Set the frame counter and delay counter for both channels. More...
void | XAxiVdma_GetFrameCounter (XAxiVdma *InstancePtr, XAxiVdma_FrameCounter *CfgPtr)
| Get the frame counter and delay counter for both channels. More...
void | XAxiVdma_ReadIntrHandler (void *InstancePtr)
| Interrupt handler for the read channel. More...
void | XAxiVdma_WriteIntrHandler (void *InstancePtr)
| Interrupt handler for the write channel. More...
int | XAxiVdma_SetCallBack (XAxiVdma *InstancePtr, u32 HandlerType, void *CallBackFunc, void *CallBackRef, u16 Direction)
| Set call back function and call back reference pointer for one channel. More...
int | XAxiVdma_Selftest (XAxiVdma *InstancePtr)
| Runs a self-test on the driver/device. More...