![]() |
MCUSW
|
Data Structures | |
struct | Cdd_IpcMpType |
Defines processor identifiers Core on which MCAL/AUTOSAR is hosted and other cores with which IPC is desired. More... | |
struct | Cdd_IpcVertIoType |
Defines Shared Memories for VRING and VRING OBJECT VRING is the shared memory between cores and VRING OBJECT is used implement queue. Please refer design/user guide for details. More... | |
struct | Cdd_IpcChannelType |
Defines logical communication channel between cores. More... | |
struct | Cdd_IpcConfigType |
CDD IPC Configuration type. More... | |
struct | Cdd_IpcRegRbValues |
struct | Cdd_IpcChannelBufType |
Channel RP Msg buffer type Used to hold the received buffer, before apps can pick it up. More... | |
CDD IPC Error Codes | |
void | Cdd_IpcGetVersionInfo (Std_VersionInfoType *VersionInfoPtr) |
Service for getting CDD version. | |
void | Cdd_IpcInit (void) |
Service for CDD Initialization. | |
Std_ReturnType | Cdd_IpcDeinit (void) |
Service for deinitializing CDD. | |
Std_ReturnType | Cdd_IpcSendMsg (VAR(uint32,) chId, const void *pBuf, VAR(uint32,) bufLen) |
Service for sending an message to remote cores. | |
Std_ReturnType | Cdd_IpcReceiveMsg (VAR(uint32,) chId, void *pBuf, uint32 *bufLen) |
Service for reception of N bytes of data from remote cores. | |
Std_ReturnType | Cdd_IpcAnnounce (const UCHAR *pBuf, VAR(uint32,) chId) |
Service for broadcasting capabilities of this core to all other cores. | |
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_IpcRegisterReadBack (uint32 remoteProcId, Cdd_IpcRegRbValues *pRegArgs) |
Service for reading the configuration registers of the MCAL modules. | |
boolean | Cdd_IpcIsInitDone (void) |
Service for checking if IPC module is initialized. | |
uint32 | Cdd_IpcGetMaxMsgSize (VAR(uint32,) chId) |
Service for checking if IPC module is initialized. | |
uint32 | Cdd_IpcGetMailboxStatus (VAR(uint32,) remoteProcId) |
Service to get Mailbox state is FULL or not. | |
void Cdd_IpcGetVersionInfo | ( | Std_VersionInfoType * | VersionInfoPtr | ) |
Service for getting CDD version.
* Service name : Cdd_IpcGetVersionInfo * Syntax : void Cdd_IpcGetVersionInfo(Std_VersionInfoType * VersionInfoPtr) * Mode : User Mode (Non-Privileged Mode) * Service ID[hex] : CDD_IPC_SID_GETVERSIONINFO * Sync/Async : Synchronous * Reentrancy : Non Reentrant * Parameters (in) : VersionInfoPtr - Pointer to version info element * Parameters (inout) : None * Parameters (out) : None * Return value : None * Description : Service for getting CDD version. *
void Cdd_IpcInit | ( | void | ) |
Service for CDD Initialization.
* Service name : Cdd_IpcInit * Syntax : Std_ReturnType Cdd_IpcInit(void) * Mode : Supervisor Mode (Privileged Mode) * Service ID[hex] : CDD_IPC_SID_INIT * Sync/Async : Synchronous * Reentrancy : Non Reentrant * Parameters (in) : None * Parameters (inout) : None * Parameters (out) : None * Return value : None * Description : Service for CDD Initialization. *
Std_ReturnType Cdd_IpcDeinit | ( | void | ) |
Service for deinitializing CDD.
* Service name : Cdd_IpcDeinit * Syntax : Std_ReturnType Cdd_IpcDeinit(void* ConfigPtr) * Mode : Supervisor Mode (Privileged Mode) * Service ID[hex] : CDD_IPC_SID_DEINIT * Sync/Async : Synchronous * Reentrancy : Non-Reentrant * Parameters (in) : ConfigPtr - Not used for now, reserved for future * Parameters (inout) : None * Parameters (out) : None * Return value : Std_ReturnType * Description : Service for deinitializing the CDD and change the * driver state to uninitialized *
Service for sending an message to remote cores.
* Service name : Cdd_IpcSendMsg * Syntax : Std_ReturnType Cdd_IpcSendMsg( * uint32 chId, * void *pBuf, * uint32 bufLen) * Mode : Supervisor Mode (Privileged Mode) * Service ID[hex] : CDD_IPC_SID_SEND * Sync/Async : Synchronous * Reentrancy : NonReentrant * Parameters (in) : chId - Communication channel identifier * : pBuf - non NULL_PTR, that describes the message to be * sent * : bufLen - Length in bytes and cannot exceed * CDD_IPC_MAX_MSG_LEN * Parameters (inout) : None * Parameters (out) : None * Return value : Std_ReturnType * Description : This API is used to transport N bytes of data across * cores. *
Std_ReturnType Cdd_IpcReceiveMsg | ( | VAR(uint32,) | chId, |
void * | pBuf, | ||
uint32 * | bufLen ) |
Service for reception of N bytes of data from remote cores.
* Service name : Cdd_IpcReceiveMsg * Syntax : Std_ReturnType Cdd_IpcReceiveMsg( * uint32 chId, * void *pBuf, * uint32 bufLen) * Mode : Supervisor Mode (Privileged Mode) * Service ID[hex] : CDD_IPC_SID_RECEIVE * Sync/Async : Synchronous * Reentrancy : NonReentrant * Parameters (in) : chId - Communication channel identifier * : pBuf - non NULL_PTR, that describes the memory space * that can hold received message. The length * shall be CDD_IPC_MAX_MSG_LEN * : bufLen - Received message length in bytes and will not * exceed CDD_IPC_MAX_MSG_LEN. * Parameters (inout) : None * Parameters (out) : None * Return value : Std_ReturnType * Description : This API is used to receive message from remote core * If there are no messages E_NOT_OK shall be * returned. * *
Std_ReturnType Cdd_IpcAnnounce | ( | const UCHAR * | pBuf, |
VAR(uint32,) | chId ) |
Service for broadcasting capabilities of this core to all other cores.
* Service name : Cdd_IpcAnnounce * Syntax : Std_ReturnType Cdd_IpcAnnounce( * void *pBuf, * uint32 bufLen) * Mode : Supervisor Mode (Privileged Mode) * Service ID[hex] : CDD_IPC_SID_ANNOUNCE * Sync/Async : Synchronous * Reentrancy : NonReentrant * Parameters (in) : pBuf - non NULL_PTR, that describes the message to be * sent. * : bufLen - Length in bytes and cannot exceed * CDD_IPC_MAX_MSG_LEN * Parameters (inout) : None * Parameters (out) : None * Return value : Std_ReturnType * Description : This API is used to announce the capability of this * core to all other cores. *
Std_ReturnType Cdd_IpcReceiveCtrlMsg | ( | uint32 * | pRemoteProcId, |
uint32 * | pRemoteEndPt, | ||
void * | pBuf, | ||
uint32 * | bufLen ) |
Service for reception of N bytes of control message from remote cores.
* Service name : Cdd_IpcReceiveCtrlMsg * Syntax : Std_ReturnType Cdd_IpcReceiveCtrlMsg( * uint32 pRemoteProcId, * uint32 pRemoteEndPt, * void *pBuf, * uint32 *bufLen) * Mode : Supervisor Mode (Privileged Mode) * Service ID[hex] : CDD_IPC_SID_CTRL_RECEIVE * Sync/Async : Synchronous * Reentrancy : NonReentrant * Parameters (inout) : pRemoteProcId - Holds the remote processor identifier * that iniciated this control message * : pRemoteEndPt - Holds remote end point number that * iniciated this control message * : pBuf - non NULL_PTR, that describes the memory space * that can hold received message. The length * shall be CDD_IPC_MAX_MSG_LEN * : bufLen - Received message length in bytes and will not * exceed CDD_IPC_MAX_MSG_LEN. * Parameters (in) : None * Parameters (out) : None * Return value : Std_ReturnType * Description : This API is used to receive control message from * remote core. If there are no messages E_NOT_OK * shall be returned. * *
Std_ReturnType Cdd_IpcRegisterReadBack | ( | uint32 | remoteProcId, |
Cdd_IpcRegRbValues * | pRegArgs ) |
Service for reading the configuration registers of the MCAL modules.
* Service name : Cdd_RegisterReadBack * Syntax : Std_ReturnType Cdd_RegisterReadBack(uint8* mod_name) * Mode : Supervisor Mode (Privileged Mode) * Service ID[hex] : None * Sync/Async : Synchronous * Reentrancy : Reentrant * Parameters (in) : None * Parameters (inout) : pRegArgs - Pointer to structure that would hold values * of registers read back by this API * Parameters (out) : None * Return value : Std_ReturnType * Description : Service for reading the critical configuration * registers of the Mailbox/IPC *
boolean Cdd_IpcIsInitDone | ( | void | ) |
Service for checking if IPC module is initialized.
* Service name : Cdd_IpcIsInitDone * Syntax : boolean Cdd_IpcIsInitDone(void) * Mode : User Mode (Non-Privileged Mode) * Service ID[hex] : CDD_IPC_SID_IS_INIT_DONE * Sync/Async : Synchronous * Reentrancy : Reentrant * Parameters (in) : None * Parameters (inout) : None * Parameters (out) : None * Return value : boolean * Description : Returns TRUE if Cdd_ipcInit is completed else FALSE *
uint32 Cdd_IpcGetMaxMsgSize | ( | VAR(uint32,) | chId | ) |
Service for checking if IPC module is initialized.
* Service name : Cdd_IpcGetMaxMsgSize * Syntax : uint32 Cdd_IpcGetMaxMsgSize(uint32 chId) * Mode : User Mode (Non-Privileged Mode) * Service ID[hex] : CDD_IPC_SID_GET_MAX_MSG_SIZE * Sync/Async : Synchronous * Reentrancy : Reentrant * Parameters (in) : chId - Communication channel identifier * Parameters (inout) : None * Parameters (out) : None * Return value : uint32 * Description : Returns max msg size for the specified channel *
uint32 Cdd_IpcGetMailboxStatus | ( | VAR(uint32,) | remoteProcId | ) |
Service to get Mailbox state is FULL or not.
* Service name : Cdd_IpcGetMailboxStatus * Syntax : uint32 Cdd_IpcGetMailboxStatus(uint32 chId) * Mode : User Mode (Non-Privileged Mode) * Service ID[hex] : CDD_IPC_SID_MAILBOX_STATE * Sync/Async : Synchronous * Reentrancy : Reentrant * Parameters (in) : remoteProcId - Remote ID * Parameters (inout) : None * Parameters (out) : None * Return value : uint32 * Description : Returns the mailbox state *
uint32 Cdd_IpcMpType::ownProcID |
Defines processor ID on which MCAL/AUTOSAR is being hosted
uint32 Cdd_IpcMpType::numProcs |
Number of remote processor which with IPC is desired
uint32 Cdd_IpcMpType::remoteProcID[CDD_IPC_CORE_USED] |
Remote processor identifiers
uint32 Cdd_IpcMpType::reserved |
Future use if any
void* Cdd_IpcVertIoType::vertIoRingAddr |
Defines address that shall be shared between cores
uint32 Cdd_IpcVertIoType::vertIoRingSize |
Size of the shared memory
uint32 Cdd_IpcVertIoType::vertIoObjSize |
Size of the vertio Object, used for vertIoRing
uint32 Cdd_IpcVertIoType::reserved |
Future use if any
uint32 Cdd_IpcChannelType::id |
Unique identifiers for a channel
uint32 Cdd_IpcChannelType::localEp |
Local End Point identifier, on which MCAL/AUTOSAR is hosted
uint32 Cdd_IpcChannelType::remoteEp |
Remote End Point identifier, on remote cores
uint32 Cdd_IpcChannelType::remoteProcId |
Remote Processor Identifier
uint32 Cdd_IpcChannelType::numMsgQueued |
Maximum depth of the queue, that holds received messages
uint32 Cdd_IpcChannelType::maxMsgSize |
Maximum size of the message that could be received
Cdd_Ipc_NewMessage Cdd_IpcChannelType::NewMessageNotify |
Function pointer to a new message for specific channel ID
uint32 Cdd_IpcChannelType::reserved |
Future use if any
Cdd_IpcMpType Cdd_IpcConfigType::coreIds |
Core identifier configurations
Cdd_IpcVertIoType Cdd_IpcConfigType::vertIoCfg |
VertIO configurations
uint32 Cdd_IpcConfigType::channelCount |
Number of channels configured
const Cdd_IpcChannelType* Cdd_IpcConfigType::pChCfg |
Pointer to array of channel conditions
uint32 Cdd_IpcConfigType::reserved |
Reserved field
uint32 Cdd_IpcRegRbValues::numRegisters |
Will specify number of registers values provided
uint32 Cdd_IpcRegRbValues::regValues[CDD_IPC_CORE_ID_MAX] |
Values of critical registers that's read and provided
uint32 Cdd_IpcRegRbValues::cddipcRev |
MAILBOX_REVISION Register
uint32 Cdd_IpcRegRbValues::cddipcsyscfg |
MAILBOX_SYSCONFIG Register
uint32 Cdd_IpcRegRbValues::cddipceoi |
MAILBOX_EOI Register
uint32 Cdd_IpcRegRbValues::cddipcmsg |
MAILBOX_MESSAGE_y Register
uint32 Cdd_IpcRegRbValues::cddipcfifosts |
MAILBOX_FIFO_STATUS_y Register
uint32 Cdd_IpcRegRbValues::cddipcmsgsts |
MAILBOX_MSG_STATUS_y Register
uint32 Cdd_IpcRegRbValues::cddipcirqrawsts |
MAILBOX_IRQ_STATUS_RAW_i Register
uint32 Cdd_IpcRegRbValues::cddipcclrsts |
MAILBOX_CLR_STATUS_i Register
uint32 Cdd_IpcRegRbValues::cddipcenbclr |
MAILBOX_ENABLE_CLR_i Register
uint32 Cdd_IpcRegRbValues::cddipcenbset |
MAILBOX_ENABLE_SET_i Register
uint32 Cdd_IpcRegRbValues::reserved |
Reserved field
uint8* Cdd_IpcChannelBufType::pBuf |
Pointer to buffer
uint32 Cdd_IpcChannelBufType::bufSize |
Buffer size, expressed in bytes