话说这篇博客本来不会写的,只是因为当时的无知,在U-BOOT下输入了一个命令:nand  erase 。 这个命令是对整个nand flash进行擦除!!好吧,我输了,我错了。擦除后在重启,超级终端就只打印:RomBoot。sam9x5的bootload分为三级引导程序,分别是romboot,bootstrap,u-boot,其nandfash储存地址如图:


详细介绍请参考:http://www.at91.com/linux4sam/bin/view/Linux4SAM/GettingStarted_9x5  。值得注意的是9x5系列的nandflash与sam9系列的储存地址不太一样,移植时查看清楚。

具体移植步骤都是参考官网:http://www.at91.com/linux4sam/bin/view/Linux4SAM/SAM9x5Page#Flashing_U_Boot   。现对其整理,以及对遇到的问题进行说明。

首先建议初次移植者配备一个J-link。并且所有文件都用厂家提供的,不然出现很多问题解决起来很费事费力。用J-link的原因是如果烧写的引导程序不能正常运行的话,如果你用的是USB,那么你的电脑可能就无法检测USB设备,或者使用sam-ba时显示连接错误。出现这些情况需要用J-link对nandflash进行擦除和修复。值得一提的是如果你碰到J-link连接上后电脑没反应,J-link上的指示灯也没有反应,出现这种情况就对J-link进行固件刷新。刷新过程不再多说。我博客里有。

       好吧,移植开始了,首先是烧写Bootstrap。连接J-link,开发板上电。打开SAM-BA.如图:



步骤:1:  点1处nandflash. 2:点2处Enable NandFlash.点Execute.3:点send boot file. 在打开所要烧写的.bin文件。等会bootstrap就烧写好了

二是u-boot烧写。如图:


步骤:

1:点1处,然后2处,然后Execute.  

2:点3处,然后点Execute,会弹出对话框,设置如图就OK:


4:在4处输入 : 

NANDFLASH::EraseBlocks 0x40000 0xBFFFF
对其进行擦除后在点5处选择U-boot.bin文件,在6处设置开始地址0x40000.在点发送就可以了。
好了到这里U-boot已经可以启动了。下一篇谈谈内核和文件系统移植

Logo

社区规范:仅讨论OpenHarmony相关问题。

更多推荐