主题中讨论的其他器件: BQ40Z60
工具/软件:Linux
背景:
- 处理器 SDK 03.03.00.04
- 当系统使用绑定/取消绑定节点运行时、DSP1和 DSP2会动态启动和停止
问题:
DSP 定期加载失败。
更多信息:
远程处理器启动看起来正常:
[417.33373737] OMAP-rproc 40800000.dsp:分配的保留存储器节点 dsp1_cma@e0000000
[417.341684] remoteproc2:提供40800000.DSP
[417.346584] remoteproc2:注意:remoteproc 仍在开发中并被视为实验。
[417.355991] remoteproc2:二进制格式尚未最终确定、并且尚未保证向后兼容性。
[417.384513] remoteproc2:为40800000.DSP 加电
[417.389437] remoteproc2:引导 FW 映像 dra7-dsp1-fw.xe66、大小为15350528
[417.404130] OMAP-hwmod:mu0_dsp1:_wait_target_disable 失败
[417.410032] OMAP-iommu 40d01000.MMU:40d01000.MMU:版本3.0
[417.415976] OMAP-iommu 40d020.MMU:40d020.MMU:版本3.0
[417.498260] remoteproc2:远程处理器40800000.DSP 现已启动
[417.50494] virtio_rpmsg_bus virtio0:rpmsg 主机处于联机状态
[417.510484] remoteproc2:registered virtio0 (类型7)
IPC 守护程序日志显示了一些问题(在本例中没有与 DSP1的连接-处理器4 -我尝试启动的内容):
[835.080166]正在检索命令...
[836.080428] LAD 名称服务器_GETUINT32:调用 nameserver_getUInt32 (0x304d0、'SP1:MSGQ:01')...
[836.080474] nameserver_getLocal:未找到输入密钥:'SP1:MSGQ:01'!
[836.080493] nameserver_getRemote:没有到处理器1的套接字连接
[836.08051] nameserver_getRemote:没有到处理器2的套接字连接
[836.080526] nameserver_getRemote:通过 sock 发送请求:5.
[836.080542] nameserver_getRemote:从 ProcID 3、MessageQ:DSP1:MSGQ:01请求
[836.080574] nameserver_getRemote:等待 waitFd:4.
[836.080663]名称服务器:从 select 返回()
[836.080685]名称服务器:侦听器从 sock 获得名称服务器消息:6!
[836.080709] listener_CB:Recvfrom socket:FD:6.
[836.080726]接收 ns msg:nbytes:484、来自 addr:61、来自 vproc:3.
[836.080742]名称服务器回复:InstanceName:MessageQ、name:DSP1:MSGQ:01、value:0x13a8e
[836.080767] nameserver:Waiting for unblockFd:2,SOCKS:maxfd:6.
[836.08080802] nameserver_getRemote:找不到 MessageQ:DSP1:MSGQ:01的值。
[836.080822] nameserver_getRemote:没有到处理器4的套接字连接
[836.080837]值= 0x80
[836.080852]状态=-5
[836.080867]完成
DSP 仿真器连接失败、出现以下错误:
"连接到目标时出错:(错误-1143 @ 0x0)设备内核挂起。 调试器已强制器件进入就绪状态并恢复调试控制、但您的应用程序的状态现在已损坏。 您对存储器和寄存器的访问应该有限、但您可能需要重置器件以进一步调试。 仿真软件包6.0.407.6)"
似乎远程处理器框架认为一切正常、但实际上 DSP 未成功加载。 有什么想法吗? 这是否是某种缓存问题? 测试是反复启动和停止完全相同的固件映像。 最终会发生该故障。
谢谢