dmaps
Xilinx Vitis Drivers API Documentation
xdmaps.h File Reference

Data Structures

struct  XDmaPs_Config
 This typedef contains configuration information for the device. More...
 
struct  XDmaPs_ChanCtrl
 DMA channle control structure. More...
 
struct  XDmaPs_BD
 DMA block descriptor stucture. More...
 
struct  XDmaPs_Cmd
 A DMA command consisits of a channel control struct, a block descriptor, a user defined program, a pointer pointing to generated DMA program, and execution result. More...
 
struct  XDmaPs_ProgBuf
 The XDmaPs_ProgBuf is the struct for a DMA program buffer. More...
 
struct  XDmaPs_ChannelData
 The XDmaPs_ChannelData is a struct to book keep individual channel of the DMAC. More...
 
struct  XDmaPs
 The XDmaPs driver instance data structure. More...
 

Typedefs

typedef void(* XDmaPsDoneHandler )(unsigned int Channel, XDmaPs_Cmd *DmaCmd, void *CallbackRef)
 It's the done handler a user can set for a channel.
 
typedef void(* XDmaPsFaultHandler )(unsigned int Channel, XDmaPs_Cmd *DmaCmd, void *CallbackRef)
 It's the fault handler a user can set for a channel.
 

Functions

int XDmaPs_CfgInitialize (XDmaPs *InstPtr, XDmaPs_Config *Config, u32 EffectiveAddr)
 Initializes a specific XDmaPs instance such that it is ready to be used.
 
int XDmaPs_Start (XDmaPs *InstPtr, unsigned int Channel, XDmaPs_Cmd *Cmd, int HoldDmaProg)
 Start a DMA command.
 
int XDmaPs_IsActive (XDmaPs *InstPtr, unsigned int Channel)
 Checks whether the DMA channel is active or idle.
 
int XDmaPs_GenDmaProg (XDmaPs *InstPtr, unsigned int Channel, XDmaPs_Cmd *Cmd)
 Generate a DMA program based for the DMA command, the buffer will be pointed by the GeneratedDmaProg field of the command.
 
int XDmaPs_FreeDmaProg (XDmaPs *InstPtr, unsigned int Channel, XDmaPs_Cmd *Cmd)
 Free the DMA program buffer that is pointed by the GeneratedDmaProg field of the command.
 
void XDmaPs_Print_DmaProg (XDmaPs_Cmd *Cmd)
 Print the Dma Prog Contents.
 
int XDmaPs_ResetManager (XDmaPs *InstPtr)
 Reset the DMA Manager.
 
int XDmaPs_ResetChannel (XDmaPs *InstPtr, unsigned int Channel)
 Reset the specified DMA Channel.
 
int XDmaPs_SetDoneHandler (XDmaPs *InstPtr, unsigned Channel, XDmaPsDoneHandler DoneHandler, void *CallbackRef)
 Set the done handler for a channel.
 
int XDmaPs_SetFaultHandler (XDmaPs *InstPtr, XDmaPsFaultHandler FaultHandler, void *CallbackRef)
 Set the fault handler for a channel.
 
int XDmaPs_Instr_DMARMB (char *DmaProg)
 Construction function for DMARMB instruction.
 
int XDmaPs_Instr_DMAWMB (char *DmaProg)
 Construction function for DMAWMB instruction.
 
void XDmaPs_DoneISR_0 (XDmaPs *InstPtr)
 Driver done interrupt service routine for channel 0.
 
void XDmaPs_DoneISR_1 (XDmaPs *InstPtr)
 Driver done interrupt service routine for channel 1.
 
void XDmaPs_DoneISR_2 (XDmaPs *InstPtr)
 Driver done interrupt service routine for channel 2.
 
void XDmaPs_DoneISR_3 (XDmaPs *InstPtr)
 Driver done interrupt service routine for channel 3.
 
void XDmaPs_DoneISR_4 (XDmaPs *InstPtr)
 Driver done interrupt service routine for channel 4.
 
void XDmaPs_DoneISR_5 (XDmaPs *InstPtr)
 Driver done interrupt service routine for channel 5.
 
void XDmaPs_DoneISR_6 (XDmaPs *InstPtr)
 Driver done interrupt service routine for channel 6.
 
void XDmaPs_DoneISR_7 (XDmaPs *InstPtr)
 Driver done interrupt service routine for channel 7.
 
void XDmaPs_FaultISR (XDmaPs *InstPtr)
 Driver fault interrupt service routine This is the one that connects the GIC.
 
XDmaPs_ConfigXDmaPs_LookupConfig (u16 DeviceId)
 Looks up the device configuration based on the unique device ID.
 
int XDmaPs_SelfTest (XDmaPs *InstPtr)
 This function runs a self-test on the driver and hardware device.