TI中文支持网
TI专业的中文技术问题搜集分享网站

Ipc_start(); 一直返回Ipc_E_NOTREADY问题

我使用的工程是mcsdk下的《ex09_readwrite》,但是导入到ccs时使用的名字是linux_dsp_rw(dsp端),linux_arm_rw(arm端);在linux3.3下一开始测试不成功,考虑可能是messageq的名字可能不一致,改为固定名字后测试成功。但是当我启动开发板后,arm端linux启动完成后,使用modprobe加载syslink后,然后使用tidsp xds100V3仿真器加载dsp端程序到dsp后执行发现程序一直在死循环

        /* only one thread must call start */
        do {
            status = Ipc_start();
        } while (status == Ipc_E_NOTREADY);
函数status = Ipc_start();一直返回 Ipc_E_NOTREADY,请问如何联合仿真调试dsp程序?怎样解决IPC启动不起来的错误?

环境为omapl138芯片,arm跑linux,dsp跑sys/bios+ipc

Kevin Le82:

无论是加载完dsp后,重新加载arm端syslink,还是在dsp加载前加载arm端的syslink都不行,why????

有人遇到和我一样的问题吗?难道是dsp端的syslink没有加载?这个要怎样加载?仿真器加载dsp程序的时候,dsp程序运行起来时不会配置好syslink的运行空间之类的?

Kevin Le82:

回复 Kevin Le82:

1、在linux使用slaveloader加载dsp程序,然后启动arm程序,这样程序正常执行

2、使用仿真器下载dsp程序,然后启动arm程序,这样dsp在ipc_start()死循环,arm程序报ipc错误。

这两种方式有什么区别?

赞(0)
未经允许不得转载:TI中文支持网 » Ipc_start(); 一直返回Ipc_E_NOTREADY问题
分享到: 更多 (0)