现象:
在reboot时有时会系统不能启动成功,串口打印消息如下:
Sent SIGTERM ttcpsvd: got signal 15, exit
udpsvd: got signal 15, exit
Sent SIGKILL to all processes
Requesting system reboot
Removing MTD device #6 (data) with use count 1
mpegts_shutdown:mpegts busy:0
eboot: Restarting system
其后就没有打印了,通过断电可以启动成功。
分析:
可以明确的是:不是qspi的高低16M引起,因为这点在之前解决过;
这个打印是系统在复位时,所产生的,还没到从fsbl启动那一步,所以怀疑是reboot时,有系统中应用程序正在工作,导致reboot被中断。
我的系统中应用程序在周期性的对pl的寄存器进行操作,怀疑可能是reboot对pl复位时,应用程序又在对pl操作,导致异常,因此需要对reboot做处理。
解决:
reboot前关闭所有任务以及可能操作fpga的地方。
验证:
因为之前出的概率也不大,不好复现,所以待验证!!!