113 #include "Std_Types.h"
135 #define CDD_IPC_SW_MAJOR_VERSION (11U)
137 #define CDD_IPC_SW_MINOR_VERSION (2U)
139 #define CDD_IPC_SW_PATCH_VERSION (0U)
149 #define CDD_IPC_AR_RELEASE_MAJOR_VERSION (4U)
151 #define CDD_IPC_AR_RELEASE_MINOR_VERSION (3U)
153 #define CDD_IPC_AR_RELEASE_REVISION_VERSION (1U)
166 #define CDD_IPC_MODULE_ID ((uint16) 255U)
168 #define CDD_IPC_VENDOR_ID ((uint16) 44U)
170 #define CDD_IPC_INSTANCE_ID ((uint8) 0U)
185 #define CDD_IPC_SID_GETVERSIONINFO (0x01U)
187 #define CDD_IPC_SID_INIT (0x02U)
189 #define CDD_IPC_SID_SEND (0x03U)
191 #define CDD_IPC_SID_RECEIVE (0x04U)
193 #define CDD_IPC_SID_ANNOUNCE (0x05U)
195 #define CDD_IPC_SID_INTERNAL_ISR_ID (0x06U)
197 #define CDD_IPC_SID_REG_READBACK (0x07U)
199 #define CDD_IPC_SID_DEINIT (0x08U)
201 #define CDD_IPC_SID_CTRL_RECEIVE (0x09U)
203 #define CDD_IPC_SID_IS_INIT_DONE (0x0AU)
205 #define CDD_IPC_SID_GET_MAX_MSG_SIZE (0x0BU)
207 #define CDD_IPC_SID_MAILBOX_STATE (0x0CU)
219 #define CDD_IPC_E_OK (0x00U)
221 #define CDD_IPC_E_INIT_FAILED (0x01U)
223 #define CDD_IPC_E_UNINIT (0x02U)
225 #define CDD_IPC_E_PARAM_POINTER (0x03U)
227 #define CDD_IPC_E_ALREADY_INITIALIZED (0x04U)
229 #define CDD_IPC_E_INVALID_CONFIG (0x05U)
231 #define CDD_IPC_E_SEND (0x06U)
233 #define CDD_IPC_E_RECEIVE_RETRY (0x07U)
235 #define CDD_IPC_E_NOT_SUPPORTED (0x08U)
237 #define CDD_IPC_E_CALLBACK_NULL (0x09U)
243 #define CDD_IPC_MAX_MSG_LEN (496U)
247 #define CDD_IPC_MAX_CTRL_MSG_LEN (32U)
254 #define CDD_IPC_MAX_RETRY_NOTIFY (2U)
256 #define Cdd_IPC_MPU10_BUFFER_SIZE (256)
278 typedef struct Cdd_IpcMpType_s
301 typedef struct Cdd_IpcVertIoType_s
322 typedef struct Cdd_IpcChannelType_s
351 typedef struct Cdd_IpcConfigType_s
409 typedef struct Cdd_IpcChannelBufType_s
441 #if (STD_ON == CDD_IPC_VERSION_INFO_API)
443 P2VAR(Std_VersionInfoType, AUTOMATIC,
444 CDD_APP_DATA) VersionInfoPtr);
484 #if (STD_ON == CDD_IPC_DEINIT_API)
515 VAR(uint32, AUTOMATIC) chId,
516 P2CONST(
void, AUTOMATIC, CDD_APP_DATA) pBuf,
517 VAR(uint32, AUTOMATIC) bufLen);
548 VAR(uint32, AUTOMATIC) chId,
549 P2VAR(
void, AUTOMATIC, CDD_APP_DATA) pBuf,
550 P2VAR(uint32, AUTOMATIC, CDD_APP_DATA) bufLen);
576 #if (STD_ON == CDD_IPC_ANNOUNCE_API)
578 P2CONST(UCHAR, AUTOMATIC, CDD_APP_DATA) pBuf,
579 VAR(uint32, AUTOMATIC) chId);
615 #if (STD_ON == CDD_IPC_ANNOUNCE_API)
617 P2VAR (uint32, AUTOMATIC, CDD_APP_DATA) pRemoteProcId,
618 P2VAR (uint32, AUTOMATIC, CDD_APP_DATA) pRemoteEndPt,
619 P2VAR (
void, AUTOMATIC, CDD_APP_DATA) pBuf,
620 P2VAR (uint32, AUTOMATIC, CDD_APP_DATA) bufLen);
643 #if (STD_ON == CDD_IPC_REGISTER_READBACK_API)
666 #if (STD_ON == CDD_IPC_IS_INIT_DONE_API)
688 #if (STD_ON == CDD_IPC_GET_MAX_MSG_SIZE_API)
710 #if (STD_ON == CDD_IPC_SAFETY_DIAGNOSTIC_API)
719 FUNC(int32_t, CDD_IPC_CODE)
Cdd_Ipc_Send_Ack(uint32 selfId, uint32 remoteProcId, uint32 val,uint32 timeoutCnt);
This file contains generated pre compile configurations for CDD IPC MCAL driver.
uint32 reserved
Definition: Cdd_Ipc.h:309
uint32 maxMsgSize
Definition: Cdd_Ipc.h:334
uint32 cddipcclrsts
Definition: Cdd_Ipc.h:393
uint32 cddipcenbclr
Definition: Cdd_Ipc.h:395
uint32 reserved
Definition: Cdd_Ipc.h:399
uint32 cddipcmsgsts
Definition: Cdd_Ipc.h:389
uint32 cddipcenbset
Definition: Cdd_Ipc.h:397
uint32 reserved
Definition: Cdd_Ipc.h:286
uint32 remoteProcId
Definition: Cdd_Ipc.h:330
uint32 reserved
Definition: Cdd_Ipc.h:338
uint32 cddipcRev
Definition: Cdd_Ipc.h:379
void * vertIoRingAddr
Definition: Cdd_Ipc.h:303
uint32 numProcs
Definition: Cdd_Ipc.h:282
uint32 vertIoObjSize
Definition: Cdd_Ipc.h:307
uint32 cddipcirqrawsts
Definition: Cdd_Ipc.h:391
uint32 cddipcfifosts
Definition: Cdd_Ipc.h:387
uint32 reserved
Definition: Cdd_Ipc.h:362
uint32 bufSize
Definition: Cdd_Ipc.h:413
uint32 remoteEp
Definition: Cdd_Ipc.h:328
uint32 numMsgQueued
Definition: Cdd_Ipc.h:332
uint32 cddipceoi
Definition: Cdd_Ipc.h:383
uint32 numRegisters
Definition: Cdd_Ipc.h:375
uint32 cddipcmsg
Definition: Cdd_Ipc.h:385
uint8 * pBuf
Definition: Cdd_Ipc.h:411
Cdd_Ipc_NewMessage NewMessageNotify
Definition: Cdd_Ipc.h:336
uint32 cddipcsyscfg
Definition: Cdd_Ipc.h:381
const Cdd_IpcChannelType * pChCfg
Definition: Cdd_Ipc.h:359
Cdd_IpcMpType coreIds
Definition: Cdd_Ipc.h:353
uint32 localEp
Definition: Cdd_Ipc.h:326
uint32 vertIoRingSize
Definition: Cdd_Ipc.h:305
uint32 channelCount
Definition: Cdd_Ipc.h:357
uint32 id
Definition: Cdd_Ipc.h:324
uint32 ownProcID
Definition: Cdd_Ipc.h:280
Cdd_IpcVertIoType vertIoCfg
Definition: Cdd_Ipc.h:355
VAR(uint8, ETH_VAR_NO_INIT_128) Eth_Ctrl_0_Egress_BufferMem_0[24576U]
boolean Cdd_IpcIsInitDone(void)
Service for checking if IPC module is initialized.
void(* Cdd_Ipc_NewMessage)(void)
Definition: Cdd_Ipc.h:258
Std_ReturnType Cdd_IpcReceiveCtrlMsg(uint32 *pRemoteProcId, uint32 *pRemoteEndPt, void *pBuf, uint32 *bufLen)
Service for reception of N bytes of control message from remote cores.
Std_ReturnType Cdd_IpcReceiveMsg(VAR(uint32,) chId, void *pBuf, uint32 *bufLen)
Service for reception of N bytes of data from remote cores.
void Cdd_IpcGetVersionInfo(Std_VersionInfoType *VersionInfoPtr)
Service for getting CDD version.
int32_t Cdd_Ipc_Send_Ack(uint32 selfId, uint32 remoteProcId, uint32 val, uint32 timeoutCnt)
uint32 Cdd_IpcGetMailboxStatus(VAR(uint32,) remoteProcId)
Service to get Mailbox state is FULL or not.
void Cdd_IpcInit(void)
Service for CDD Initialization.
Std_ReturnType Cdd_IpcSendMsg(VAR(uint32,) chId, const void *pBuf, VAR(uint32,) bufLen)
Service for sending an message to remote cores.
uint32 Cdd_IpcGetMaxMsgSize(VAR(uint32,) chId)
Service for checking if IPC module is initialized.
Std_ReturnType Cdd_IpcDeinit(void)
Service for deinitializing CDD.
Std_ReturnType Cdd_IpcAnnounce(const UCHAR *pBuf, VAR(uint32,) chId)
Service for broadcasting capabilities of this core to all other cores.
Std_ReturnType Cdd_IpcRegisterReadBack(uint32 remoteProcId, Cdd_IpcRegRbValues *pRegArgs)
Service for reading the configuration registers of the MCAL modules.
void Cdd_Ipc_mailboxDisableMsg(uint16 selfId, uint16 remoteProcId)
Dummy API to call mailbox API Ipc_mailboxDisableNewMsgInt from Application : API Mailbox Disable new ...
Std_ReturnType Cdd_IpcgbShutdownRequest(void)
#define CDD_IPC_CORE_USED
Definition: Cdd_IpcCfg.h:357
#define CDD_IPC_CORE_ID_MAX
IPC maximum possible core ID.
Definition: Cdd_IpcCfg.h:355
Channel RP Msg buffer type Used to hold the received buffer, before apps can pick it up.
Definition: Cdd_Ipc.h:410
Defines logical communication channel between cores.
Definition: Cdd_Ipc.h:323
CDD IPC Configuration type.
Definition: Cdd_Ipc.h:352
Defines processor identifiers Core on which MCAL/AUTOSAR is hosted and other cores with which IPC is ...
Definition: Cdd_Ipc.h:279
Definition: Cdd_Ipc.h:374
Defines Shared Memories for VRING and VRING OBJECT VRING is the shared memory between cores and VRING...
Definition: Cdd_Ipc.h:302