bootloader是嵌入式系统开发过程中不可逾越的一步,其作用就是初始化必要的硬件,建立完整的内存映射图,为后续操作系统的系统运行建立一个合适的软硬件环境。
u-boot是bootloader的一种,它能工作在多种体系结构上,比如ARM、X86、MIPS、PPC等,能够引导多种操作系统,包括常见的window、linux等,特别是在嵌入式中的广泛应用。
u-boot在ARM上引导linux内核的过程,首先需要关闭包括看门狗在内各种中断,使得在对板级初始化过程中不会受到外部的影响,通过配置PLL完成对系统时钟的初始化,通过配置BWSCON寄存器完成对SDRAM的初始化,然后通过对CPSR和SP的配合使用完成对堆栈的初始化。