U-Boot移植(6)总结U-Boot工程的总体结构
1、源代码组织 对于ARM而言,主要的目录如下: board 平台依赖 存放电路板相关的目录文件,每一套板子对 应一个目录。如 smdk2410(arm920t) cpu 平台依赖 存放CPU相关的目录文件,每一款CPU对应一个目录,例如: arm920t 、 xscale、 i386 等目录 lib_arm 平台依赖 存放对ARM体系结构通用的文件,主要用于实现ARM平台通用的函数, 如 软件浮点。 common 通用 通用的多功能函数实现,如 环境,命令,控制台相关 的函数实现。 include 通用 头文件和开发板配置文件,所有开发板的配置文件都在 configs 目录下 lib_generic 通用 通用库函数的实现 net 通用 存放 网络协议 的程序 drivers 通用 通用的设备驱动程序,主要有以太网接口的驱动,nand驱动。 ....... 2.makefile简要分析 所有这些目录的编译连接都是由顶层目录的makefile来确定的。 在执行make之前,先要执行make $(board)_config 对工程进行配置,以确定特定于目标板的各个子目录和头文件。 $(board)_config:是makefile 中的一个伪目标,它传入指定的CPU,ARCH,BOARD,SOC参数去执行mkconfig脚本。