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

关于am335x nand boot的问题

各位大佬,

小弟手头有一块evm板,出现了一个问题,之前还能启动,但后来就不能启动了。串口只打印了一句话

Boot SPL 2013.01.01 (Feb 16 2017 – 17:41:41)

之后,就宕机了,最初的处理方式是重新烧写一下SPL就解决了。后来又出现了,然后我就没再重新烧写,而是怀疑是否是flash里的数据坏了,但不应该啊,因为数据在第一个块,第一个块是不应该坏的哦,然后我就怀着好奇的心先用SD卡启动,在uboot下把第一个块里的内容读了出来,然后与烧写的镜像一对比,发现两者一模一样。然后我就把nandflash中的MLO先读到内存中,然后将第一块擦除,再将内存中的数据重新写回去,竟然可以从nandflash启动了,竟然启动了!

小弟实在想不通这中间的缘由,有哪位大佬能解惑么?谢谢啦先。

Denny%20Yang99373:

启动失败的时候单步跟踪调试一下,可以把符号表load进去,看看卡在哪儿了。

xiaoping zhang:

回复 Denny%20Yang99373:

Denny Yang启动失败的时候单步跟踪调试一下,可以把符号表load进去,看看卡在哪儿了。

出现问题的地方,调试不到吧,或者说我并不知道这个地方该怎么调试。

xiaoping zhang:

回复 xiaoping zhang:

xiaoping zhang

Denny Yang
启动失败的时候单步跟踪调试一下,可以把符号表load进去,看看卡在哪儿了。

出现问题的地方,调试不到吧,或者说我并不知道这个地方该怎么调试。

Shine:

回复 xiaoping zhang:

用仿真器跟踪SPL代码的执行情况,可以参考下面的文档。
www.ti.com.cn/…/zhca539.pdf

xiaoping zhang:

回复 Shine:

Shine Zhang用仿真器跟踪SPL代码的执行情况,可以参考下面的文档。

好的,今天我试一试(๑>؂<๑)

xiaoping zhang:

回复 Shine:

汇报一下最新情况:仿真是没卡的,可以正常跑过去。但回头用nandflash启动,仍然无法启动。这就比较尴尬了!

重新捋一下问题的特点?

第一:这个MLO一直是可以用的;

第二:将这个MLO从第一个块里读出来,再写回去就可以了,没有做任何改变;

第三:能正常启动时,一直都可以正常启动,一旦出现了不能正常启动,除非重新写一下第一个nand块,否则永远不能启动;

第四:重新烧写之后,又可以正常使用一段时间。

第一第二点说明软件是没有问题的,第三第四点说明硬件好像也没什么问题。那么问题在哪里呢?

这是不是可以猜测,nand flash启动,或程序运行中的某个诱因,触发了CPU或硬件中某个状态位,而且该位不随断电而复位而使板子无法启动,但是擦除或写第一个块会解除该状态位,使得板子又可以启动呢?

xiaoping zhang:

回复 xiaoping zhang:

有没有其他小伙伴们遇到类似的情况呢?

xiaoping zhang:

回复 xiaoping zhang:

又出现了,::>_<::

赞(0)
未经允许不得转载:TI中文支持网 » 关于am335x nand boot的问题
分享到: 更多 (0)