69 #include <ti/csl/soc.h> 77 #include <ti/drv/ipc/soc/ipc_soc.h> 98 uint16_t len, uint32_t src);
109 typedef struct Ipc_InitPrms_s
145 typedef struct RPMessage_Params_s
343 uint32_t *rplyEndPt, uint32_t *fromProcId, uint32_t timeout);
367 uint32_t *rplyEndPt, uint32_t *fromProcId);
447 uint32_t *remoteEndPt, uint32_t timeout);
480 uint32_t *remoteEndPt, uint32_t timeout, uint32_t token);
Ipc_OsalPrms osalPrms
Definition: ipc.h:130
configurations for ipc module.
int32_t RPMessage_delete(RPMessage_Handle *handlePtr)
Delete an endpoint instance.
Ipc_NewMsgReceivedFxn newMsgFxn
Definition: ipc.h:133
uint32_t instId
Definition: ipc.h:111
int32_t RPMessage_setCallback(RPMessage_Handle handle, RPMessage_Callback cb, void *arg)
Sets callback.
void IpcInitPrms_init(uint32_t instId, Ipc_InitPrms *initPrms)
Initialize IPC init params.
void RPMessage_unblock(RPMessage_Handle handle)
Unblocks an RPMessage_recv()
uint32_t(* Ipc_VirtToPhyFxn)(const void *virtAddr)
IPC Virtual to Physical address translation callback function.
Definition: ipc_types.h:161
VirtIO Interface for application.
IPC initialization parameters.
Definition: ipc.h:109
int32_t RPMessage_init(RPMessage_Params *params)
Initialize RPMessage Module.
int32_t RPMessage_send(RPMessage_Handle handle, uint32_t dstProc, uint32_t dstEndPt, uint32_t srcEndPt, void *data, uint16_t len)
Sends data to a remote processor.
void *(* Ipc_PhyToVirtFxn)(uint32_t phyAddr)
IPC Physical to Virtual address translation callback function.
Definition: ipc_types.h:173
int32_t RPMessage_getRemoteEndPtToken(uint32_t selfProcId, const char *name, uint32_t *remoteProcId, uint32_t *remoteEndPt, uint32_t timeout, uint32_t token)
int32_t RPMessage_getRemoteEndPt(uint32_t selfProcId, const char *name, uint32_t *remoteProcId, uint32_t *remoteEndPt, uint32_t timeout)
Wait for an endpoint to become available on another processor.
void RPMessage_deInit(void)
Tear down the RPMessage Module. The module API should not be used after this is called.
int32_t Ipc_deinit(void)
De Initialize IPC module.
uint32_t numBufs
Definition: ipc.h:150
uint32_t RPMessage_getObjMemRequired(void)
Returns local memory for RPMessage Object.
int32_t RPMessage_recvNb(RPMessage_Handle handle, void *data, uint16_t *len, uint32_t *rplyEndPt, uint32_t *fromProcId)
A non blocking API to receive message.
Parameter structure for creating RPMessage endpoints.
Definition: ipc.h:145
int32_t RPMessage_announce(uint32_t remoteProcId, uint32_t endPt, const char *name)
Annouce the name of an endpoint and that it is ready to to receive messages.
void(* Ipc_NewMsgReceivedFxn)(uint32_t srcEndPt, uint32_t procId)
IPC New message notification.
Definition: ipc_types.h:325
void(* RPMessage_Callback)(RPMessage_Handle handle, void *arg, void *data, uint16_t len, uint32_t src)
RPMessage_Callback.
Definition: ipc.h:97
uint32_t data[13]
Definition: csl_udmap_tr.h:628
Ipc_PrintFxn printFxn
Definition: ipc.h:137
data types definitions for ipc module.
int32_t RPMessage_lateInit(uint32_t proc)
Add a proc to RPMessage Module.
Ipc_PhyToVirtFxn phyToVirtFxn
Definition: ipc.h:114
void Ipc_newMessageIsr(uint32_t srcProcId)
New Message Interrupt Handler.
void Ipc_mailboxEnableNewMsgInt(uint16_t selfId, uint16_t remoteProcId)
API Mailbox Enable new MSG interrupt for a given remote processor.
uint32_t requestedEndpt
Definition: ipc.h:147
RPMessage_Handle RPMessage_create(RPMessage_Params *params, uint32_t *endPt)
Create a endpoint instance for receiving.
int32_t Ipc_init(Ipc_InitPrms *cfg)
Initialize IPC module.
This file contains the Register Desciptions for CSL types.
int32_t RPMessageParams_init(RPMessage_Params *params)
Initialize an RPMessage_Params structure to default values.
IPC - Multiproc interface.
Ipc_VirtToPhyFxn virtToPhyFxn
Definition: ipc.h:122
void RPMessage_unblockGetRemoteEndPt(uint32_t token)
Unblocks an RPMessage_getRemoteEndPtToken() call.
uint32_t stackSize
Definition: ipc.h:164
struct RPMessage_Object_s * RPMessage_Handle
RPMessage_Handle type.
Definition: ipc.h:85
void Ipc_mailboxDisableNewMsgInt(uint16_t selfId, uint16_t remoteProcId)
API Mailbox Disable new MSG interrupt for a given remote processor.
int32_t RPMessage_recv(RPMessage_Handle handle, void *data, uint16_t *len, uint32_t *rplyEndPt, uint32_t *fromProcId, uint32_t timeout)
Receives a message from an endpoint instance.
uint32_t RPMessage_getMessageBufferSize(void)
Returns Message Buffer Size.
void(* Ipc_PrintFxn)(const char *str)
IPC info/debug print function prototype.
Definition: ipc_types.h:182
IPC driver OSAL function pointers.
Definition: ipc_types.h:330
uint32_t bufSize
Definition: ipc.h:156
void * buf
Definition: ipc.h:153
void * stackBuffer
Definition: ipc.h:161