目录
一个完整的嵌入式Linux发行版包括U-Boot、Linux Kernel、Device Tree以及Rootfs。Linux系统的启动,需要一个BootLoader程序。U-Boot就是BootLoader的一种。通常来说,CPU芯片上电以后先运行一段BootLoader程序。这段bootloader程序会先初始化DDR等外设,然后将Linux内核从flash(NAND,NOR FLASH, SD, MMC 等)拷贝到 DDR 中,最后启动 Linux 内核。 一般来说,对于UBoot的移植,主要会涉及到以下几点:
1. DDR初始化。
2. 以太网功能。
1. U-Boot源码下载
U-Boot是一个遵循 GPL 协议的开源软件,官方提供了针对不同厂家CPU不同版本的U-Boot。各个CPU厂家从U-Boot官方下载某一特定版本的U-Boot,CPU厂商(如,NXP)根据自己的CPU芯片基于该版本维护一个版本的U-Boot。然后,基于各厂商CPU的开发板或自己设计的板卡,需要根据CPU厂商维护的U-Boot做相应的修改,以适应自己的板卡。具体关系如下: