AM261x MCU+ SDK: ipc_rpmsg.h File Reference

| AM261x MCU+ SDK 26.00.00 |

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

Go to the source code of this file.

## Data Structures
struct | RPMessage_Object
struct | RPMessage_CreateParams
| Parameters passed to RPMessage_construct. More...
struct | RPMessage_Params
| Parameters passed to RPMessage_init, these are generated via SysCfg. More...

## Macros
#define | RPMESSAGE_MAX_LOCAL_ENDPT (64U)
| Users can create RPMessage_Object with local end value in the range of 0 .. RPMESSAGE_MAX_LOCAL_ENDPT - 1. More...
#define | RPMESSAGE_VRING_ADDR_INVALID (0xFFFFFFFFU)
| Value to indicate if vring ID is valid or NOT. More...
#define | RPMESSAGE_VRING_SIZE(numBuf, bufSize) (((numBuf)*(uint16_t)((bufSize)+32U))+32U)
| Returns the size needed for each VRING. More...
#define | RPMESSAGE_OBJECT_SIZE_MAX (192U)
| Size of RPMessage_Object. More...
#define | RPMESSAGE_CRC_SIZE (2U)
| CRC size in bytes for IPC RPMsg. More...

## Typedefs
typedef void(* | RPMessage_RecvCallback) (struct RPMessage_Object_s *obj, void *arg, void *data, uint16_t dataLen, int32_t crcStatus, uint16_t remoteCoreId, uint16_t remoteEndPt)
| Callback that is invoked when a message is received from any CPU at the specified local end point. More...
typedef void(* | RPMessage_RecvNotifyCallback) (struct RPMessage_Object_s *obj, void *arg)
| Callback that is invoked when a message is received from any CPU at the specified local end point. More...
typedef void(* | RPMessage_ControlEndPtCallback) (void *arg, uint16_t remoteCoreId, uint16_t remoteEndPt, const char *remoteServiceName)
| Callback that is invoked when a annoucement message is received on the control end point. More...
typedef int32_t(* | RPMessage_CrcHookFxn) (uint8_t *data, uint16_t dataLen, uint8_t crcSize, void *crc)
| This is the CRC Hook function to be defined in application for CRC Calculation. More...

## Functions
void | RPMessage_Params_init (RPMessage_Params *params)
| Set default values to RPMessage_Params. More...
void | RPMessage_CreateParams_init (RPMessage_CreateParams *params)
| Set default values to RPMessage_CreateParams. More...
int32_t | RPMessage_init (const RPMessage_Params *params)
| Initialize RPMessage module. More...
void | RPMessage_deInit (void)
| De-Initialize RPMessage module. More...
int32_t | RPMessage_waitForLinuxReady (uint32_t timeout)
| Wait for linux side RPMessage to be ready. More...
void | RPMessage_controlEndPtCallback (RPMessage_ControlEndPtCallback controlEndPtCallback, void *controlEndPtCallbackArgs)
| Callback to call when a control message is received on a control end point. More...
int32_t | RPMessage_construct (RPMessage_Object *obj, const RPMessage_CreateParams *createParams)
| Create a RPMessage object to receive messages at a specified end-point. More...
void | RPMessage_destruct (RPMessage_Object *obj)
| Delete a previously created RPMessage object. More...
void | RPMessage_unblock (RPMessage_Object *obj)
| Unblocks RPMessage_recv, for the input object, if it is blocked waiting on messages and users want to exit that task. More...
uint16_t | RPMessage_getLocalEndPt (const RPMessage_Object *obj)
| Return local end point of a RPMessage_Object. More...
int32_t | RPMessage_announce (uint16_t remoteProcId, uint16_t localEndPt, const char *name)
| Announce a local end point at which a `service` is created to a remote core. More...
int32_t | RPMessage_send (void *data, uint16_t dataLen, uint16_t remoteCoreId, uint16_t remoteEndPt, uint16_t localEndPt, uint32_t timeout)
| Send a message to a remote core at a specified remote end point. More...
int32_t | RPMessage_recv (RPMessage_Object *obj, void *data, uint16_t *dataLen, uint16_t *remoteCoreId, uint16_t *remoteEndPt, uint32_t timeout)
| Blocking API to wait till a message is received from any CPU at the specified local end point. More...