我的板子是TMDSEVM6678LE,最近在学习如何烧写程序进入nand 。按照论坛上的流程已经可以把 msdk中的例子i2cnandboot_evm6678l.out 烧入nand并且成功boot了。
但是接下来我想把论坛里提供的另外一个例程烧入nand中遇到了问题 。
例程为论坛里提供的一个UART的测试例程,我已经在我的板子上跑过这个程序了,没有问题。
但是我按照之前的流程将这个例程的out文件烧入nand后似乎不能运行。
IBL还是成功加载了,在我的串口调试程序上可以看到
IBL version: 1.0.0.16
IBL: PLL and DDR Initialization Complete
IBL Result code 00
IBL: Booting from NAND
但是就没有后文了,程序如果跑起来应该是会回复一个hello,并且我用串口发消息过去会有回复的。
请问是不是因为boot程序有些什么地方要改的么?
Andy Yin1:
根据mcsdk_2_01_02_06\tools\boot_loader\ibl\src\make\ibl_c66x\ibl_common.inc知IBL对memory的使用,IBL占用了LL2 0x800000~0x81CA00区间memory,在加载时需要避开这块memory在加载前被复用,所以你可以调整一下UART测试工程中memory的使用,如调整如下:
VECTORS: o = 0x00820000 l = 0x00000200 LL2_RW_DATA: o = 0x00820200 l = 0x0003FE00