各位好:
我使用Ti_Am335x_SDK_02.00.02.11版本sdk作为开发母版,改动board\ti\am335x\board.c,board.h等于开发板直接相关文件,生成MLO和u-boot.img,放到SD里,通过SD方式启动处理器。
现象非常奇怪:很小概率性的会打印出过启动字符串“U-Boot SPL + 版本号 +日期”,并且有时这一串字符串还打印不完整,大部分时候只会打印出一个0x00字符。(uart0的硬件稳定性可以排除,我们用仿真ddr3参数的MLO测试了,打印信息非常完整,也很稳定)
查看MLO流程代码,应该是在MLO阶段就有打印输出,在spl_board_init函数里面调用preloader_console_int()函数初始化串口(serial_init)并输出“U-Boot SPL + 版本号 +日期”信息。到这个阶段包括之前流程的代码都没有改动过,我们理解应该也不用修改,所以有什么样的原因会造成类似上文描述的现象呢,为什么很小概率的可以打印出些许启动字符串?请论坛大牛们给予指导~
Jian Zhou:
就是有时候能打印出来有时候打不出来?打出来的时候能够顺利启动到U-boot么?
tongsheng wang:
回复 Jian Zhou:
看打印信息,是没有启动到uboot,停留在MLO阶段
xiyuan ma:
你好,你解决了吗,我也遇到这个问题·生成的MLO,SD卡启动,只打印出uboot 版本号·,然后就没了。。。