今天终于把uboot移植成了
中间还出现很多小插曲
大家可以从下面的网站
http://repo.or.cz/w/u-boot-openmoko/mini2440.git
下载到已经支持mini2440的uboot
不过,我下载时的版本只能支持到128M的nand flash,而我手里的开发板却是256M的nand flash。
那么就需要略作修改
1) 在board/mini2440下的mini2440.c文件中注释掉关于LCD的代码,因为它是支持NEC显示屏的,而我的是通宝的,这个功能无非是要显示个logo之类的东西,反正我也用不着,就直接注释掉了。
2) 在cpu/arm920t/s3c24x0下的nand_read.c文件中找到read_nand_id的函数段。在这部分你会看到,它在根据uboot读到的nand_id来判断nand flash的种类,你只要把K9F2G08X0B的相关信息加上就可以了。
具体实现是:
else if (nand_id == 0xecda) {
}
相应的参数可以在数据手册中查到
这样,重新编译后的uboot就可以正常识别nand flash了。这也是很多时候,下载uboot后,它会一直在no nand flash found这个提示循环的问题的根源,uboot读到的nand_id是她不识别。