做U-boot开发,需要对硬件进行裁剪,U-boot的目的是为了引导内核的启动,首先保证的是u-boot要和你的内核配套,然后对硬件进行裁剪,比如说,你原版的u-boot不支持USB的下载方式,所以需要添加对USB下载方式的支持,下载之前需要做一些初始化的工作,看你的开发板需要初始化哪些硬件,都需要添加到U-boot里面,内核里面要裁剪好你这些硬件的驱动程序,u-boot和内核的移植,需要看你的开发板想要支持的硬件,还有自己想实现的功能,比如说U-boot下载界面,都是为了开发方便自己添加上去的。
Uboot是一个万能式的启动代码,包含很多平台的,当然也包括各种开发板。不用做过多的修改,Uboot就能移植,有的启动代码,内核当然可以工作了。
修改的肯定和底层硬件有关。移植主要修改的地方是nand,ram这几个。