|
AM263Px MCU+ SDK
10.01.00
|
|
Go to the documentation of this file.
42 #include <drivers/hw_include/cslr_soc.h>
56 #define IPC_NOTIFY_CLIENT_ID_MAX (16U)
61 #define IPC_NOTIFY_CLIENT_ID_RPMSG (0U)
66 #define IPC_NOTIFY_CLIENT_ID_SYNC (1U)
71 #define IPC_NOTIFY_DEFAULT_INTR_PRIORITY (4U)
76 #define IPC_NOTIFY_MSG_VALUE_MAX (0x10000000U)
81 #define IPC_NOTIFY_CRC_MSG_VALUE_MAX (0x100000U)
86 #define IPC_NOTIFY_CRC_MAX (0x100U)
91 #define IPC_NOTIFY_CRC_SIZE (1U)
96 #define IPC_NOTIFY_CRC_DATASIZE (4U)
101 #define IPC_INTR_ROUTER_ENABLE (0x01U)
106 #define IPC_INTR_ROUTER_DISABLE (0x00U)
154 typedef struct IpcNotify_Params_ {
223 int32_t
IpcNotify_sendMsg(uint32_t remoteCoreId, uint16_t remoteClientId, uint32_t msgValue, uint32_t waitForFifoNotFull);
#define CSL_CORE_ID_MAX
Definition: cslr_soc_defines.h:125
int32_t(* IpcNotify_CrcHookFxn)(uint8_t *data, uint16_t dataLen, uint8_t crcSize, void *crc)
This is the API defined in application for CRC Calculation.
Definition: ipc_notify.h:145
void * args
Definition: hsmclient_msg.h:4
uint32_t selfCoreId
Definition: ipc_notify.h:164
void IpcNotify_deInit(void)
De-initialize IPC Notify module.
int32_t IpcNotify_registerClient(uint16_t localClientId, IpcNotify_FxnCallback msgCallback, void *args)
Register a callback to handle messages received from a specific remote core and for a specific local ...
int32_t IpcNotify_sendSync(uint32_t remoteCoreId)
Send a sync message to specific core.
void IpcNotify_registerNonNotifyCallback(IpcNotify_NonNotifyCallback callback)
This is a driver library internal API and is used in certain SOCs by the separate mailbox driver.
int32_t IpcNotify_sendMsg(uint32_t remoteCoreId, uint16_t remoteClientId, uint32_t msgValue, uint32_t waitForFifoNotFull)
Send message to a specific remote core and specific client ID on that remote core.
uint32_t linuxCoreId
Definition: ipc_notify.h:168
uint32_t IpcNotify_isCoreEnabled(uint32_t coreId)
Check if a core is enabled for IPC.
Parameters used by IpcNotify_init.
Definition: ipc_notify.h:154
uint8_t isIPCIntrRouter
Definition: ipc_notify.h:173
void(* IpcNotify_NonNotifyCallback)(uint32_t remoteCoreId)
This is a driver library internal API and is used in certain SOCs by the separate mailbox driver.
Definition: ipc_notify.h:133
int32_t IpcNotify_syncAll(uint32_t timeout)
Send a message to all enabled cores and wait for sync message from all enabled cores.
void IpcNotify_Params_init(IpcNotify_Params *params)
Set default value to IpcNotify_Params.
uint32_t dataLen
Definition: hsmclient.h:1
int32_t IpcNotify_waitSync(uint32_t remoteCoreId, uint32_t timeout)
Wait for a sync message to be received from the specified core.
uint8_t isMailboxIpcEnabled
Definition: ipc_notify.h:172
uint32_t IpcNotify_getSelfCoreId(void)
Return current core ID.
int32_t IpcNotify_unregisterClient(uint16_t localClientId)
Un-register a previously registered callback.
uint32_t numCores
Definition: ipc_notify.h:156
uint8_t intrPriority
Definition: ipc_notify.h:169
uint8_t isCrcEnabled
Definition: ipc_notify.h:170
int32_t IpcNotify_init(const IpcNotify_Params *params)
Initialize IPC Notify module.
void(* IpcNotify_FxnCallback)(uint32_t remoteCoreId, uint16_t localClientId, uint32_t msgValue, int32_t crcStatus, void *args)
User callback that is invoked when a message is received from a reote core for a given client ID.
Definition: ipc_notify.h:124
IpcNotify_CrcHookFxn crcHookFxn
Definition: ipc_notify.h:171