xilmailbox
Vitis Drivers API Documentation
xilmailbox.h File Reference

Data Structures

struct  XMboxTag
 Data structure used to refer XilMailbox. More...
 

Macros

#define XILMBOX_MSG_TYPE_REQ   (0x00000001U)
 Message type buffer. More...
 
#define XILMBOX_MSG_TYPE_RESP   (0x00000002U)
 Response type buffer. More...
 
#define XMAILBOX_MAX_MSG_LEN   XIPIPSU_MAX_MSG_LEN
 Maximum number of Messages (each 4-bytes long) More...
 
#define XMAILBOX_PAYLOAD_LEN_1U   (1U)
 Payload lengths. More...
 
#define XMAILBOX_PAYLOAD_LEN_2U   (2U)
 Payload length of size 2byte. More...
 
#define XMAILBOX_PAYLOAD_LEN_3U   (3U)
 Payload length of size 3byte. More...
 
#define XMAILBOX_PAYLOAD_LEN_4U   (4U)
 Payload length of size 4byte. More...
 
#define XMAILBOX_PAYLOAD_LEN_5U   (5U)
 Payload length of size 5byte. More...
 
#define XMAILBOX_PAYLOAD_LEN_6U   (6U)
 Payload length of size 6byte. More...
 
#define XMAILBOX_PAYLOAD_LEN_7U   (7U)
 Payload length of size 7byte. More...
 

Typedefs

typedef void(* XMailbox_RecvHandler )(void *CallBackRefPtr)
 Receive handler. More...
 
typedef void(* XMailbox_ErrorHandler )(void *CallBackRefPtr, u32 ErrorMask)
 Error handler. More...
 
typedef struct XMboxTag XMailbox
 Data structure used to refer XilMailbox. More...
 

Enumerations

enum  XMailbox_IpiSharedMemState { XMAILBOX_SHARED_MEM_UNINITIALIZED = 0, XMAILBOX_SHARED_MEM_INITIALIZED }
 This typedef contains XMAILBOX shared memory state. More...
 
enum  XMailbox_Handler { XMAILBOX_RECV_HANDLER, XMAILBOX_ERROR_HANDLER }
 This typedef contains XMAILBOX Handler Types. More...
 

Functions

u32 XMailbox_Initialize (XMailbox *InstancePtr, u8 DeviceId)
 Initialize the XMailbox Instance. More...
 
u32 XMailbox_Send (XMailbox *InstancePtr, u32 RemoteId, u8 Is_Blocking)
 This function triggers an IPI to a destination CPU. More...
 
u32 XMailbox_SendData (XMailbox *InstancePtr, u32 RemoteId, void *BufferPtr, u32 MsgLen, u8 BufferType, u8 Is_Blocking)
 This function sends an IPI message to a destination CPU. More...
 
u32 XMailbox_Recv (XMailbox *InstancePtr, u32 SourceId, void *BufferPtr, u32 MsgLen, u8 BufferType)
 This function reads an IPI message. More...
 
s32 XMailbox_SetCallBack (XMailbox *InstancePtr, XMailbox_Handler HandlerType, void *CallBackFuncPtr, void *CallBackRefPtr)
 This routine installs an asynchronous callback function for the given HandlerType. More...
 
u32 XMailbox_SetSharedMem (XMailbox *InstancePtr, u64 Address, u32 Size)
 This function sets the shared memory location for IPI usage. More...
 
u32 XMailbox_GetSharedMem (XMailbox *InstancePtr, u64 **Address)
 This function returns the shared memory location for IPI usage. More...
 
int XMailbox_ReleaseSharedMem (XMailbox *InstancePtr)
 This function releases the shared memory. More...