This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] AM5728:AM5728

Guru**** 2553260 points
Other Parts Discussed in Thread: AM5728

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1241668/am5728-am5728

器件型号:AM5728

大家好、我用的芯片模型是 AM5728。
描述:当 DSP 触发异常时、它会复位。我跟踪复位过程以阻塞 IPC_ATTAC->IPC_procSyncStart、等待来自其他 DSP 内核的 ti_sdo_IPC_PROCSYNCSTART 和 ti_sdo_IPC_PROCSYNCFINISH。

2.问题:
1.让崩溃内核将服务恢复到 DSP 层的应用层、如何处理?
您是否有关于 AM5728的 DSP 复位的任何信息? 如果您有任何问题、请发送一份副本给我。

3.相关代码
1).故障代码
静态 void rproc_crash_handler_work (struct work_struct *work)
{
struct rproc *rproc = container_of (work、struct rproc、crash_handler);
结构设备*dev =_rproc->dev;

dev_dbg (dev、"enter %s\n"、__func__);

mutex_lock (&rproc->lock);

如果(rproc->state == RPROC_CREDED || rproc->state == RPROC_offline){
/*仅处理检测到的第一次崩溃*/
mutex_unlock (&rproc->lock);
返回;

rproc->state = RPROC_CREDED;
dev_err (dev、"Handling crash #%u in %s\n"、++rproc->crash_cnt、
rproc->name);

mutex_unlock (&rproc->lock);

如果(!rproc-->recovery_disabled)
rproc_trigger_recovery (rproc);//重要信息


2) IPC 同步码
/*同步处理器。 */
状态= IPC_procSyncStart (remoteProcId、IPC_MODULE->ipcSharedAddr);
if (status <0){
返回(状态);

3)完成同步代码
/*完成处理器同步*/
status = ti_sdo_ipc_procSyncFinish (remoteProcId、
IPC_MODULE->ipcSharedAddr)