14.3 U-Boot启动流程分析
U-Boot支持许多的处理器和开发板,主要是该软件有良好的架构,本节以使用ARM处理器的smdk2410开发板为例分析U-Boot的启动流程,在其他的处理器架构上,U-Boot也执行类似的启动流程。图14-3是U-Boot在ARM处理器的启动步骤。
图14-3 U-Boot在ARM处理器的启动步骤
图14-3列出了U-Boot在ARM处理器启动过程中的几个关键点,从图中看出U-Boot的启动代码分布在start.S、low_level_init.S、board.c和main.c文件中。其中,start.S是U-Boot整个程序的入口,该文件使用汇编语言编写,不同体系结构的启动代码是不同的;low_level_init.S是特定开发板的设置代码;board.c包含开发板底层设备驱动;main.c是一个与平台无关的代码,U-Boot应用程序的入口在此文件中。