hi all,
i load visionSDK IPU2 firmware by bootloader, but when i run app.out, A15 can not communicate with IPU2. log as following:
ASSERT (system_ipc.c|System_ipcInit|119)
[HOST] [HOST ] 15.845604 s: SYSTEM: System A15 Init in progress !!!
[HOST] [HOST ] 15.845604 s: System_waitAppInitComplete() IN!!
[HOST] [HOST ] 15.845635 s: System_waitAppInitComplete() OUT!!
[HOST] [HOST ] 15.845665 s: SYSTEM: IPC: Init in progress !!!
[HOST] [HOST ] 15.845665 s: SYSTEM: IPC: Notify init in progress !!!
[HOST] [HOST ] 15.845757 s: SYSTEM: IPC: [IPU2] socket bind failed (Invalid argument, 22) !!!
[HOST] [HOST ] 15.845757 s: SYSTEM: IPC: [IPU2] Notify RX channel create failed (endpoint = 81) !!!
then i follow the visionSDK code, i found that IPU2 connet to A15 IPC thread was blocked in the following code:
{
UInt32 retryCnt=0;
UInt32 retval;
Vps_printf("RpmsgInit in progress...\n");
{
retval = Resource_getVdevStatus(RPMSG_LATE_ATTACH_A15_VDEV_ID);
if(retval != RPMSG_LATE_ATTACH_A15_VDEV_ID)
{
BspOsal_sleep(10);
retryCnt++;
}
else
{
Vps_printf("Connection established with HLOS, calling rpmsgInit\n");
break;
}
}
IpcMgr_rpmsgStartup();
#else
/*start ipc*/
IpcMgr_ipcStartup();
#endif
gSystem_rpmsgObj.rpmsgHandle =
RPMessage_create(
SYSTEM_RPMSG_ENDPT_REMOTE,
System_rpmsgCbHandler,
NULL,
&gSystem_rpmsgObj.localEndpoint
);
UTILS_assert(gSystem_rpmsgObj.rpmsgHandle!=NULL);
/* Announce we are here: */
NameMap_register(
"rpmsg-proto",
"rpmsg-proto",
SYSTEM_RPMSG_ENDPT_REMOTE
);
#endif
}