Tool/software: TI-RTOS
Hello everybody
I want to setup a project using IPC MessageQ and ListMP; it has three parts, one is running on Linux and two are running on DSP. MessageQ transfers Linux <-> DSP messages and ListMP maintains DSP <-> DSP shared stuffs.
MessageQ setup is fine (using ipc_3_47_01_00/examples/TCI6636_linux_elf/ex02_messageq as template). Also ListMP is working.
Now I want to merge two samples, but it is not working; Linux MessageQ uses IpcMgr_ipcStartup and it calls Ipc_start and Ipc_attach internally. And to setup ListMP I must attach to both DSP (call Ipc_attach(core0) in core1 and call Ipc_attach(core1) in core0) but returns Ipc_E_FAIL. I traced and found that in line 302 of Ipc.c it returns Ipc_E_FAIL (status = ti_sdo_ipc_MessageQ_SetupTransportProxy_attach(remoteProcId, sharedAddr);)
Is there any limitation in IPC that when using 'ti.ipc.transports.TransportRpmsgSetup' as transport, Ipc_attach works only in DSP to Linux and not in DSP to DSP?
Sample project is also attached.
Best Regards.ListMP_MessageQ.zip