TDA4VM
SDK 7.3
MCU1_0(MCUSW -- cddIpc)
MCU2_0 (vision app)
I want to achieve the IPC between MCU1_0(running AUTOSAR) and MCU2_0(running vision apps).
1. The IPC communication between MCU1 0 and MCU2 1 is successful, and Interrupt configuration is as follows
#if defined(CDD_IPC_REMOTE_CORE_MCU2_1_USED)
/** \brief Register interrupt handler for new message notification from
* core MCU 11
*/
static void Cdd_IpcApp_MbIntRegForMcu21(void)
{
struct tisci_msg_rm_irq_set_req rmIrqReq;
struct tisci_msg_rm_irq_set_resp rmIrqResp;
OsalRegisterIntrParams_t intrPrms;
OsalInterruptRetCode_e osalRetVal;
Int32 retVal;
HwiP_Handle hwiHandle;
rmIrqReq.valid_params = TISCI_MSG_VALUE_RM_DST_ID_VALID;
rmIrqReq.valid_params |= TISCI_MSG_VALUE_RM_DST_HOST_IRQ_VALID;
rmIrqReq.valid_params |= TISCI_MSG_VALUE_RM_SECONDARY_HOST_VALID;
rmIrqReq.src_id = TISCI_DEV_NAVSS0_MAILBOX_7;
rmIrqReq.src_index = 0U; /* 0 for User 0, 1 for user 1... */
rmIrqReq.dst_id = TISCI_DEV_MCU_R5FSS0_CORE0;
rmIrqReq.secondary_host = TISCI_HOST_ID_MCU_0_R5_0;
rmIrqReq.dst_host_irq = INTRTR_CFG_MBX_CLST7_USR0_408_MCU_2_0_TO_MCU_1_0_377;
retVal = Sciclient_rmIrqSet(
&rmIrqReq, &rmIrqResp, APP_SCICLIENT_TIMEOUT);
if(CSL_PASS != retVal)
{
AppUtils_Printf(MSG_NORMAL,MSG_APP_NAME
": Error in SciClient Interrupt Params Configuration!!!\n");
}
/* Interrupt hookup */
Osal_RegisterInterrupt_initParams(&intrPrms);
intrPrms.corepacConfig.arg = (uintptr_t)NULL;
intrPrms.corepacConfig.isrRoutine = &Cdd_IpcProfile_MsgFromMcu21Isr;
intrPrms.corepacConfig.priority = 1U;
intrPrms.corepacConfig.corepacEventNum = 0U;
intrPrms.corepacConfig.intVecNum = INTRTR_CFG_MBX_CLST7_USR0_408_MCU_2_0_TO_MCU_1_0_377;
osalRetVal = Osal_RegisterInterrupt(&intrPrms, &hwiHandle);
if(OSAL_INT_SUCCESS != osalRetVal)
{
AppUtils_Printf(MSG_NORMAL,
MSG_APP_NAME ": Error Could not register ISR to receive"
" from MCU 2 1 !!!\n");
}
return;
}
#endif /* CDD_IPC_REMOTE_CORE_MCU2_1_USED */
2.How do I modify the interrupt configuration if I want to receive IPC messages from MCU2_0