5.12. CDD_IPC
5.12.1. Types
Base type |
Type Name |
Brief |
---|---|---|
enum |
CPU cores type. |
|
enum |
IPC Tx processing. |
|
enum |
IPC Instance type. |
|
typedef uint8 |
Specifies ID of the remote core |
|
typedef void(*)(const PduInfoType *PduInfoPtr) |
Notification callback function pointer. |
5.12.1.1. enum Cdd_Ipc_CoreType
Enumerator |
Value |
Description |
---|---|---|
CDD_IPC_CPU1 |
0U |
CPU1. |
CDD_IPC_CPU2 |
1U |
CPU2. |
CDD_IPC_CPU3 |
2U |
CPU3. |
Brief: CPU cores type.
5.12.1.2. enum Cdd_Ipc_TxProcessingType
Enumerator |
Value |
Description |
---|---|---|
CDD_IPC_POLLING |
1U |
Polling mode. |
CDD_IPC_INTERRUPT |
2U |
Interrupt mode. |
Brief: IPC Tx processing.
5.12.1.3. enum Cdd_Ipc_InstanceType
Enumerator |
Value |
Description |
---|---|---|
CDD_IPC_CPU1_L_CPU2_R_INST0 |
CPU1IPCSEND_BASE + IPC_O_CPU1TOCPU2INTIPCSET(0U) |
CPU1 - Local core, CPU2 - Remote core, Instance 1. |
CDD_IPC_CPU1_L_CPU2_R_INST1 |
CPU1IPCSEND_BASE + IPC_O_CPU1TOCPU2INTIPCSET(1U) |
CPU1 - Local core, CPU2 - Remote core, Instance 2. |
CDD_IPC_CPU1_L_CPU2_R_INST2 |
CPU1IPCSEND_BASE + IPC_O_CPU1TOCPU2INTIPCSET(2U) |
CPU1 - Local core, CPU2 - Remote core, Instance 3. |
CDD_IPC_CPU1_L_CPU2_R_INST3 |
CPU1IPCSEND_BASE + IPC_O_CPU1TOCPU2INTIPCSET(3U) |
CPU1 - Local core, CPU2 - Remote core, Instance 4. |
CDD_IPC_CPU1_L_CPU3_R_INST0 |
CPU1IPCSEND_BASE + IPC_O_CPU1TOCPU3INTIPCSET(0U) |
CPU1 - Local core, CPU3 - Remote core, Instance 1. |
CDD_IPC_CPU1_L_CPU3_R_INST1 |
CPU1IPCSEND_BASE + IPC_O_CPU1TOCPU3INTIPCSET(1U) |
CPU1 - Local core, CPU3 - Remote core, Instance 2. |
CDD_IPC_CPU1_L_CPU3_R_INST2 |
CPU1IPCSEND_BASE + IPC_O_CPU1TOCPU3INTIPCSET(2U) |
CPU1 - Local core, CPU3 - Remote core, Instance 3. |
CDD_IPC_CPU1_L_CPU3_R_INST3 |
CPU1IPCSEND_BASE + IPC_O_CPU1TOCPU3INTIPCSET(3U) |
CPU1 - Local core, CPU3 - Remote core, Instance 4. |
CDD_IPC_CPU2_L_CPU1_R_INST0 |
CPU2IPCSEND_BASE + IPC_O_CPU2TOCPU1INTIPCSET(0U) |
CPU2 - Local core, CPU1 - Remote core, Instance 1. |
CDD_IPC_CPU2_L_CPU1_R_INST1 |
CPU2IPCSEND_BASE + IPC_O_CPU2TOCPU1INTIPCSET(1U) |
CPU2 - Local core, CPU1 - Remote core, Instance 2. |
CDD_IPC_CPU2_L_CPU1_R_INST2 |
CPU2IPCSEND_BASE + IPC_O_CPU2TOCPU1INTIPCSET(2U) |
CPU2 - Local core, CPU1 - Remote core, Instance 3. |
CDD_IPC_CPU2_L_CPU1_R_INST3 |
CPU2IPCSEND_BASE + IPC_O_CPU2TOCPU1INTIPCSET(3U) |
CPU2 - Local core, CPU1 - Remote core, Instance 4. |
CDD_IPC_CPU2_L_CPU3_R_INST0 |
CPU2IPCSEND_BASE + IPC_O_CPU2TOCPU3INTIPCSET(0U) |
CPU2 - Local core, CPU3 - Remote core, Instance 1. |
CDD_IPC_CPU2_L_CPU3_R_INST1 |
CPU2IPCSEND_BASE + IPC_O_CPU2TOCPU3INTIPCSET(1U) |
CPU2 - Local core, CPU3 - Remote core, Instance 2. |
CDD_IPC_CPU2_L_CPU3_R_INST2 |
CPU2IPCSEND_BASE + IPC_O_CPU2TOCPU3INTIPCSET(2U) |
CPU2 - Local core, CPU3 - Remote core, Instance 3. |
CDD_IPC_CPU2_L_CPU3_R_INST3 |
CPU2IPCSEND_BASE + IPC_O_CPU2TOCPU3INTIPCSET(3U) |
CPU2 - Local core, CPU3 - Remote core, Instance 4. |
CDD_IPC_CPU3_L_CPU1_R_INST0 |
CPU3IPCSEND_BASE + IPC_O_CPU3TOCPU1INTIPCSET(0U) |
CPU3 - Local core, CPU1 - Remote core, Instance 1. |
CDD_IPC_CPU3_L_CPU1_R_INST1 |
CPU3IPCSEND_BASE + IPC_O_CPU3TOCPU1INTIPCSET(1U) |
CPU3 - Local core, CPU1 - Remote core, Instance 2. |
CDD_IPC_CPU3_L_CPU1_R_INST2 |
CPU3IPCSEND_BASE + IPC_O_CPU3TOCPU1INTIPCSET(2U) |
CPU3 - Local core, CPU1 - Remote core, Instance 3. |
CDD_IPC_CPU3_L_CPU1_R_INST3 |
CPU3IPCSEND_BASE + IPC_O_CPU3TOCPU1INTIPCSET(3U) |
CPU3 - Local core, CPU1 - Remote core, Instance 4. |
CDD_IPC_CP3_L_CPU2_R_INST0 |
CPU3IPCSEND_BASE + IPC_O_CPU3TOCPU2INTIPCSET(0U) |
CPU3 - Local core, CPU2 - Remote core, Instance 1. |
CDD_IPC_CP3_L_CPU2_R_INST1 |
CPU3IPCSEND_BASE + IPC_O_CPU3TOCPU2INTIPCSET(1U) |
CPU3 - Local core, CPU2 - Remote core, Instance 2. |
CDD_IPC_CP3_L_CPU2_R_INST2 |
CPU3IPCSEND_BASE + IPC_O_CPU3TOCPU2INTIPCSET(2U) |
CPU3 - Local core, CPU2 - Remote core, Instance 3. |
CDD_IPC_CP3_L_CPU2_R_INST3 |
CPU3IPCSEND_BASE + IPC_O_CPU3TOCPU2INTIPCSET(3U) |
CPU3 - Local core, CPU2 - Remote core, Instance 4. |
Brief: IPC Instance type.
5.12.2. Structures
Name |
Brief |
---|---|
IPC Tx channel config type. |
|
IPC Tx instance config type. |
|
IPC Rx channel config type. |
|
IPC Rx instance config type. |
|
IPC config type. |
5.12.3. Defines
Name |
Brief |
---|---|
CDD_IPC_SW_MAJOR_VERSION |
Driver Implementation Major Version. |
CDD_IPC_SW_MINOR_VERSION |
Driver Implementation Minor Version. |
CDD_IPC_SW_PATCH_VERSION |
Driver Implementation Patch Version. |
CDD_IPC_AR_RELEASE_MAJOR_VERSION |
AUTOSAR Major version specification implemented by CDD_IPC Driver. |
CDD_IPC_AR_RELEASE_MINOR_VERSION |
AUTOSAR Minor version specification implemented by CDD_IPC Driver. |
CDD_IPC_AR_RELEASE_REVISION_VERSION |
AUTOSAR Patch version specification implemented by CDD_IPC Driver. |
CDD_IPC_VENDOR_ID |
Texas Instruments Vendor ID. |
CDD_IPC_MODULE_ID |
CDD IPC Driver Module ID. |
CDD_IPC_INSTANCE_ID |
CDD IPC Instance ID. |
CDD_IPC_E_UNINIT |
API service used without module initialization. |
CDD_IPC_E_ALREADY_INITIALIZED |
API Cdd_Ipc_Init service called while the IPC driver has already been initialized. |
CDD_IPC_E_PARAM_VALUE |
API service called with invalid parameter value. |
CDD_IPC_E_PARAM_POINTER |
API service called with invalid data buffer pointer. |
CDD_IPC_E_INVALID_LENGTH |
API service called with invalid data length. |
CDD_IPC_SID_GET_VERSION_INFO |
Cdd_Ipc_GetVersionInfo() API Service ID. |
CDD_IPC_SID_INIT |
Cdd_Ipc_Init() API Service ID. |
CDD_IPC_SID_SYNC |
Cdd_Ipc_Sync() API Service ID. |
CDD_IPC_SID_TRANSMIT |
Cdd_Ipc_Transmit() API Service ID. |
CDD_IPC_SID_MAIN_FUNCTION_READ |
Cdd_Ipc_MainFunction_Read() API Service ID. |
CDD_IPC_IS_TX_INSTANCE_FREE |
Cdd_Ipc_IsTxInstanceFree() API Service ID. |
CDD_IPC_SID_GET_COUNTER |
Cdd_Ipc_GetCounter() API Service ID. |
BIT_MASK_EIGHT |
Bit mask for last 8 bits. |
BIT_MASK_FOUR |
Bit mask for last 4 bits. |
BIT_SHIFT_BY_8 |
Shift bits by 8 bits. |
CDD_IPC_SEND_TO_RCV_STEP |
Send to receive registers step. |
CDD_IPC_REG_SET (x) |
Set register address. |
CDD_IPC_REG_CLR (x) |
Clear register address. |
CDD_IPC_REG_FLG (x) |
Flag register address. |
CDD_IPC_REG_SENDCOM (x) |
Send command register address. |
CDD_IPC_REG_SENDADDR (x) |
Send address register address. |
CDD_IPC_REG_SENDDATA (x) |
Send data register address. |
CDD_IPC_REG_STS (x) |
Status register address. |
CDD_IPC_REG_ACK (x) |
Acknowledgement register address. |
CDD_IPC_REG_RECVCOM (x) |
Receive command register address. |
CDD_IPC_REG_RECVADDR (x) |
Receive address register address. |
CDD_IPC_REG_RECVDATA (x) |
Receive data register address. |
CDD_IPC_FLAG0 |
IPC FLAG 0 - Triggers interrupt. |
CDD_IPC_FLAG1 |
IPC FLAG 1 - Indicates polling mode. |
CDD_IPC_FLAG2 |
IPC FLAG 2 - Reserved for syncronization of CPUs. |
CDD_IPC_COMMBYTE |
Macro to define the upper byte index that can be transmitted/received in command register. |
CDD_IPC_ADDRBYTE |
Macro to define the upper byte index that can be transmitted/received in address register. |
CDD_IPC_DATABYTE |
Macro to define the upper byte index that can be transmitted/received in address register. |
CDD_IPC_COMMANDSIZE |
Macro to define the no of bytes that can be written to a command register. |
CDD_IPC_CHANNELINDEX |
Macro to define the index of channel ID in flag register. |
CDD_IPC_LENGTHINDEX |
Macro to define the index of length in flag register. |
5.12.4. Functions
Return type |
Function Name |
Brief |
---|---|---|
void |
Cdd_Ipc_GetVersionInfo(Std_VersionInfoType * VersionInfoPtr) |
Service to provide the version information of Cdd Ipc module. |
void |
Cdd_Ipc_Init(const Cdd_Ipc_ConfigType * ConfigPtr) |
Service to initialize CDD IPC driver. |
Std_ReturnType |
Cdd_Ipc_Sync(Cdd_Ipc_RemoteCoreType RemoteCore) |
Service to synchronise two cores communicating in IPC communication within a preconfigured timeout. |
Std_ReturnType |
Cdd_Ipc_Transmit(PduIdType ChannelId, const PduInfoType * PduInfoPtr) |
Service to request transmission. |
void |
Cdd_Ipc_MainFunction_Read(void ) |
Service to perform the polling of confgured IPC Rx instances. |
boolean |
Cdd_Ipc_IsTxInstanceFree(PduIdType ChannelId) |
Service to check the status of the instance that is configured for transmitting the message in the respective channel. |
uint64 |
Cdd_Ipc_GetCounter(void ) |
Service to read the timestamp counter value. |
void |
Cdd_Ipc_SetCfgObj(const Cdd_Ipc_ConfigType * ConfigPtr) |
Sets the configuration pointer. |
Std_ReturnType |
Cdd_Ipc_Sync_Process(Cdd_Ipc_RemoteCoreType RemoteCore) |
Synchronises two cores for inter process communication. |
Std_ReturnType |
Cdd_Ipc_Transmit_Priv(PduIdType ChannelId, const PduInfoType * PduInfoPtr) |
Requests the transmission of a PDU. |
void |
Cdd_Ipc_RxIndication(uint8 Instance_Index, uint8 Channel_Index, const PduInfoType * PduInfoPtr) |
Indicates a successful reception of a received Cdd Ipc Rx LPDU to the upper layer. |
boolean |
Cdd_Ipc_GetChannelPollingStatus(uint8 Instance_Index, uint8 * ChannelIndex) |
Returns the Rx polling status of the instance. |
void |
Cdd_Ipc_ReadChannelPriv(uint8 Instance_Index, const PduInfoType * PduInfoPtr) |
Copies the received data to the PduInfoPtr. |
void |
Cdd_Ipc_WriteChannelPriv(uint8 Instance_Index, uint8 Channel_Index, const PduInfoType * PduInfoPtr) |
Copies the data to be transmitted from PduInfoPtr to command registers. |
void |
Cdd_Ipc_Acknowledge(Cdd_Ipc_InstanceType Instance) |
Acknowledges the reception of a PDU. |
Std_ReturnType |
Cdd_Ipc_GetRxIdxPriv(Cdd_Ipc_InstanceType Instance, uint8 * InstanceIndex, uint8 * ChannelIndex) |
Finds the Rx instance index and Rx channel index for the given instance. |
Std_ReturnType |
Cdd_Ipc_GetRxChIdx(Cdd_Ipc_InstanceType Instance, uint8 InstanceIndex, uint8 * ChannelIndex) |
Finds the Rx channel index for the given instance. |
Std_ReturnType |
Cdd_Ipc_GetTxIdxPriv(PduIdType ChannelId, uint8 * InstanceIndex, uint8 * ChannelIndex) |
Finds the Tx instance index and Tx channel index for the given Pdu. |
void |
Cdd_Ipc_ProcessIsr(Cdd_Ipc_InstanceType Instance) |
Invoked by the respective IPC instance ISR. |
boolean |
Cdd_Ipc_IsChannelIdValid(PduIdType ChannelId) |
Checks whether the TxPdu is valid or not. |
boolean |
Cdd_Ipc_InstanceStatus(PduIdType ChannelId) |
Returns the status of the instance that is configured for transmitting the PDU. |
uint64 |
Cdd_Ipc_ReadCounter(void ) |
Returns the timestamp counter value. |
5.12.4.1. function Cdd_Ipc_GetVersionInfo
void Cdd_Ipc_GetVersionInfo(
Std_VersionInfoType * VersionInfoPtr
)
Brief: Service to provide the version information of Cdd Ipc module.
Parameters:
VersionInfoPtr is the pointer to CDD IPC driver version information.
Returns:
None
Return: None
Precondition: This API is available only if CDD_IPC_GET_VERSION_INFO_API is STD_ON
Postcondition: None
5.12.4.2. function Cdd_Ipc_Init
void Cdd_Ipc_Init(
const Cdd_Ipc_ConfigType * ConfigPtr
)
Brief: Service to initialize CDD IPC driver.
Parameters:
ConfigPtr is the configuration pointer pointing to a generated configuration variant from plugin
Return: None
Precondition: Preconditions - Driver not already initialized
Postcondition: Postconditions - Driver in initialized state
5.12.4.3. function Cdd_Ipc_Sync
Std_ReturnType Cdd_Ipc_Sync(
Cdd_Ipc_RemoteCoreType RemoteCore
)
Brief: Service to synchronise two cores communicating in IPC communication within a preconfigured timeout.
Parameters:
RemoteCore is the symbolic name of the remote core that needs to be synchronized with.
Returns:
E_OK Synchronization is successful.
E_NOT_OK Synchronization failed.
Return: Status of synchronization.
Precondition: None
Postcondition: None
5.12.4.4. function Cdd_Ipc_Transmit
Std_ReturnType Cdd_Ipc_Transmit(
PduIdType ChannelId,
const PduInfoType * PduInfoPtr
)
Brief: Service to request transmission.
Parameters:
ChannelId : When Cdd Ipc is integrated with Autosar Com stack, this parameter is a Pdu identifier used to address the respective channel. When Cdd Ipc is not integrated with Autosar Com stack, this parameter is a channel identifier used to address the respective channel.
PduInfoPtr is the pointer to a struct of type PduInfoType containing the complete data to be transmitted.
Returns:
E_OK Transmit request has been accepted.
E_NOT_OK Transmit request has not been accepted.
Return: Cdd_Ipc_Transmit request is accepted or not
Precondition: None
Postcondition: None
5.12.4.5. function Cdd_Ipc_MainFunction_Read
void Cdd_Ipc_MainFunction_Read(
void
)
Brief: Service to perform the polling of confgured IPC Rx instances.
Parameters:
None
Returns:
None
Return: None
Precondition: None
Postcondition: None
5.12.4.6. function Cdd_Ipc_IsTxInstanceFree
boolean Cdd_Ipc_IsTxInstanceFree(
PduIdType ChannelId
)
Brief: Service to check the status of the instance that is configured for transmitting the message in the respective channel.
Parameters:
ChannelId : When Cdd Ipc is integrated with Autosar Com stack, this parameter is a Pdu identifier used to address the respective channel. When Cdd Ipc is not integrated with Autosar Com stack, this parameter is a channel identifier used to address the respective channel.
Returns:
TRUE Instance is free
FALSE Instance is busy
Return: IPC instance configured for transmitting the PDU is busy or not
Precondition: None
Postcondition: None
5.12.4.7. function Cdd_Ipc_GetCounter
uint64 Cdd_Ipc_GetCounter(
void
)
Brief: Service to read the timestamp counter value.
Parameters:
None
Return: 64-bit timestamp counter value
Precondition: None
Postcondition: None
5.12.4.8. function Cdd_Ipc_SetCfgObj
void Cdd_Ipc_SetCfgObj(
const Cdd_Ipc_ConfigType * ConfigPtr
)
Brief: Sets the configuration pointer.
Parameters:
ConfigPtr Configuration pointer
Returns:
None
Return: None
Precondition: None
Postcondition: None
5.12.4.9. function Cdd_Ipc_Sync_Process
Std_ReturnType Cdd_Ipc_Sync_Process(
Cdd_Ipc_RemoteCoreType RemoteCore
)
Brief: Synchronises two cores for inter process communication.
Parameters:
RemoteCore is the numeric ID of the remote core that needs to be synchronized
Returns:
E_OK Synchronization is successfull
E_NOT_OK Synchronization failed
Return: Status of synchronization
Precondition: None
Postcondition: None
5.12.4.10. function Cdd_Ipc_Transmit_Priv
Std_ReturnType Cdd_Ipc_Transmit_Priv(
PduIdType ChannelId,
const PduInfoType * PduInfoPtr
)
Brief: Requests the transmission of a PDU.
Parameters:
ChannelId : When Cdd Ipc is integrated with Autosar Com stack, this parameter is a Pdu identifier used to address the respective channel. When Cdd Ipc is not integrated with Autosar Com stack, this parameter is a channel identifier used to address the respective channel.
PduInfoPtr is the pointer to a struct of type PduInfoType containing the complete data to be transmitted.
Returns:
E_OK Transmit request has been accepted.
E_NOT_OK Transmit request has not been accepted.
Return: Cdd_Ipc_Transmit request is accepted or not
Precondition: None
Postcondition: None
5.12.4.11. function Cdd_Ipc_RxIndication
void Cdd_Ipc_RxIndication(
uint8 Instance_Index,
uint8 Channel_Index,
const PduInfoType * PduInfoPtr
)
Brief: Indicates a successful reception of a received Cdd Ipc Rx LPDU to the upper layer.
Parameters:
Instance_Index is the index of the Rx instance in Cdd_Ipc_CfgPtr
Channel_Index is the index of the Rx channel in Cdd_Ipc_CfgPtr
PduInfoPtr Pointer to the received data and it’s length
Return: None
Precondition: None
Postcondition: None
5.12.4.12. function Cdd_Ipc_GetChannelPollingStatus
boolean Cdd_Ipc_GetChannelPollingStatus(
uint8 Instance_Index,
uint8 * ChannelIndex
)
Brief: Returns the Rx polling status of the instance.
Parameters:
Instance_Index is the index of the Rx instance in Cdd_Ipc_CfgPtr
ChannelIndex is pointer to the channel index
Returns:
TRUE Message is received in the instance
FALSE Message is not received in the instance
Return: Rx status of the channel
Precondition: None
Postcondition: None
5.12.4.13. function Cdd_Ipc_ReadChannelPriv
void Cdd_Ipc_ReadChannelPriv(
uint8 Instance_Index,
const PduInfoType * PduInfoPtr
)
Brief: Copies the received data to the PduInfoPtr.
Parameters:
Instance_Index is the index of the Rx instance in Cdd_Ipc_CfgPtr
PduInfoPtr is the pointer to a struct of type PduInfoType where received data needs to be copied
Return: None
Precondition: None
Postcondition: None
5.12.4.14. function Cdd_Ipc_WriteChannelPriv
void Cdd_Ipc_WriteChannelPriv(
uint8 Instance_Index,
uint8 Channel_Index,
const PduInfoType * PduInfoPtr
)
Brief: Copies the data to be transmitted from PduInfoPtr to command registers.
Parameters:
Instance_Index is the index of the Rx instance in Cdd_Ipc_CfgPtr
Channel_Index is the index of the Rx channel in Cdd_Ipc_CfgPtr
PduInfoPtr is the pointer to a struct of type PduInfoType where received data needs to be copied
Return: None
Precondition: None
Postcondition: None
5.12.4.15. function Cdd_Ipc_Acknowledge
void Cdd_Ipc_Acknowledge(
Cdd_Ipc_InstanceType Instance
)
Brief: Acknowledges the reception of a PDU.
Parameters:
Instance is the Cdd Ipc Instance
Return: None
Precondition: None
Postcondition: None
5.12.4.16. function Cdd_Ipc_GetRxIdxPriv
Std_ReturnType Cdd_Ipc_GetRxIdxPriv(
Cdd_Ipc_InstanceType Instance,
uint8 * InstanceIndex,
uint8 * ChannelIndex
)
Brief: Finds the Rx instance index and Rx channel index for the given instance.
Parameters:
Instance is the Cdd Ipc Instance
ChannelIndex is pointer the channel index
InstanceIndex is pointer the instance index
Returns:
TRUE Rx instance and channel are configured
FALSE Rx instance and channel are not configured
Return: Rx channel is configured or not for the given instance and channel
Precondition: None
Postcondition: None
5.12.4.17. function Cdd_Ipc_GetRxChIdx
Std_ReturnType Cdd_Ipc_GetRxChIdx(
Cdd_Ipc_InstanceType Instance,
uint8 InstanceIndex,
uint8 * ChannelIndex
)
Brief: Finds the Rx channel index for the given instance.
Parameters:
Instance is the Cdd Ipc Instance
ChannelIndex is pointer the channel index
InstanceIndex is instance index
Returns:
TRUE Rx channel is configured
FALSE Rx channel is not configured
Return: Rx channel is configured or not for the given instance and channel
Precondition: None
Postcondition: None
5.12.4.18. function Cdd_Ipc_GetTxIdxPriv
Std_ReturnType Cdd_Ipc_GetTxIdxPriv(
PduIdType ChannelId,
uint8 * InstanceIndex,
uint8 * ChannelIndex
)
Brief: Finds the Tx instance index and Tx channel index for the given Pdu.
Parameters:
ChannelId : Symbolic name of the Tx Pdu to be transmitted when Cdd_Ipc is integrated with Com Stack. Symbolic name Tx channel when Cdd_Ipc is not integrated with Com Stack.
ChannelIndex is pointer the channel index
InstanceIndex is pointer the instance index
Returns:
TRUE Tx instance and channel are configured for the Pdu
FALSE Tx instance and channel are not configured for the Pdu
Return: Tx channel is configured or not for the given instance and channel
Precondition: None
Postcondition: None
5.12.4.19. function Cdd_Ipc_ProcessIsr
void Cdd_Ipc_ProcessIsr(
Cdd_Ipc_InstanceType Instance
)
Brief: Invoked by the respective IPC instance ISR.
This Interrupt function is invoked when a reception happens in an IPC instance in any of the channel
Parameters:
Instance is the IPC instance
Returns:
None
Return: None
Precondition: None
Postcondition: None
5.12.4.20. function Cdd_Ipc_IsChannelIdValid
boolean Cdd_Ipc_IsChannelIdValid(
PduIdType ChannelId
)
Brief: Checks whether the TxPdu is valid or not.
Parameters:
ChannelId : When Cdd Ipc is integrated with Autosar Com stack, this parameter is a Pdu identifier used to address the respective channel. When Cdd Ipc is not integrated with Autosar Com stack, this parameter is a channel identifier used to address the respective channel.
Returns:
TRUE PDU is valid
FALSE PDU is not valid
Return: Returns whether PDU is valid or not
Precondition: None
Postcondition: None
5.12.4.21. function Cdd_Ipc_InstanceStatus
boolean Cdd_Ipc_InstanceStatus(
PduIdType ChannelId
)
Brief: Returns the status of the instance that is configured for transmitting the PDU.
Parameters:
ChannelId : When Cdd Ipc is integrated with Autosar Com stack, this parameter is a Pdu identifier used to address the respective channel. When Cdd Ipc is not integrated with Autosar Com stack, this parameter is a channel identifier used to address the respective channel.
Returns:
TRUE Tx channel is free
FALSE Tx channel is busy
Return: Status of the instance that is configured for transmitting the PDU
Precondition: None
Postcondition: None
5.12.4.22. function Cdd_Ipc_ReadCounter
uint64 Cdd_Ipc_ReadCounter(
void
)
Brief: Returns the timestamp counter value.
Parameters:
None
Return: 64-bit timestamp counter value
Precondition: None
Postcondition: None