hello,
IPC 问题,请教各位大牛。
问题: linux OS下执行 ./app_host CORE0 卡住,MessageQ_open()不能正常执行。
我们应该怎样定位此问题?有哪些调试手段?
配置: 虚拟机,ubuntu 18.04,
ti-processor-sdk-rtos-k2hk-evm-06.03.00.106-Linux-x86-Install.bin
ti-processor-sdk-linux-k2hk-evm-06.03.00.106-Linux-x86-Install.bin
参考文档:
《processor-sdk-linux-docs-06_03_00_106》
《processor-sdk-rtos-docs-06_03_00_106》
《Guide_Keystone II_IPC_examples 》
步骤: step1. 安装 ti-processor-sdk-rtos-k2hk-evm-06.03.00.106-Linux-x86-Install.bin
安装 ti-processor-sdk-linux-k2hk-evm-06.03.00.106-Linux-x86-Install.bin
配置好各环境变量
step2. 修改 ti-processor-sdk-linux-k2hk-evm-06.03.00.106-Linux-x86-Install.bin安装目录下Makefile
PLATFORM=${IPC_PLATFORM}为 PLATFORM=”TCI6636”,
(方便聚焦问题, 如果不修改,生成的ex44_...... 等,运行也不成功)
step3. ti-processor-sdk-linux-k2hk-evm-06.03.00.106-Linux-x86-Install.bin安装目录下执行ti-ipc-linux-examples,
生成 ex02_messageq目录, 此目录下有 app_host, server_core0.xe66等文件。
step4. 66ak2hk evm电路板上电,启动linux OS , linux-4.19.94+gitAUTOINC+be5389fd85-gbe5389fd85,
step5. OS下加载驱动
insmod uio.ko
insmod uio_module_drv.ko
insmod remoteproc.ko
insmod keystone_remoteproc.ko
insmod keystone_dsp_mem.ko
insmod cmemk.ko
insmod rpmsg_core.ko
insmod virtio_rpmsg_bus.ko
insmod rpmsg_proto.ko
没有报错
step6. 运行
mpmsrv
mpmcl reset dsp0
mpmcl cl dsp0 server_core0.xe66
mpmcl run dsp0
成功, 显示界面如 图1所述,但没有打印 “virtio_rpmsg_bus virtio0: creating channel rpmsg-proto addr "这一行。(请问这有没有影响?)
图1. 摘自《Guide_Keystone II_IPC_examples 》, 对比,我们执行mpmcl run dsp0后,没有打印 “virtio_rpmsg_bus virtio0: creating channel rpmsg-proto addr "这一行
图2,执行 ./app_host CORE0, 串口输出
图3,图4,跟踪代码,增加调试信息,与图2的串口 配套