uboot_smdkv210 分析一:源码目录结构

1.board
本目录存放与已有开发板相关的文件。每种开发板有一个子目录,子目录仅存放与开发板相关的c文件和配置文件,不包含开发板CPU架构通用的实现文件。
每个目录下有如下文件(以samsung\smdkc110为例):
Makefile
config.mk
smdkc110.c      和板子相关的代码
flash.c         Flash操作代码
u-boot.lds      全局链接文件

2.common
实现u-boot命令行下支持的命令,每一条命令对应一个文件。例如bootm命令对应的是cmd_bootm.c。

3.cpu
与CPU架构相关目录,每一款支持的CPU或架构均在一个子目录下。
每个目录下有如下文件(以s5pc11x为例):
Makefile
config.mk
cpu.c           和处理器相关的代码
interrupts.c    中断处理代码
serial.c        串口初始化代码
start.s         全局开始启动代码。下一篇将分析该文件

4.disk
对磁盘的支持。

5.doc
文档目录。

6.drivers
设备驱动程序目录。比如串口、USB、mmc等。

7.fs
支持的文件系统。u-boot支持cramfs、ext2、fat、fdos、jffs2、reiserfs、ubifs、yaffs2文件系统。

8.include
使用的头文件均在改目录下,还有对各种硬件平台支持的汇编文件、系统配置文件和文件系统支持的文件。
该目录下configs目录有与开发板相关的配置文件。例如smdkv210single.h。
该目录下asm目录有与cpu体系结构相关的头文件,例如asm-arm目录下有arch-s5pc11x目录。

9.lib_xxx
与体系结构相关的库文件。如ARM相关的库放在lib_arm目录下。例如u-boot启动后首先打印的版本信息version_string[]就在board.c中定义。

10.net
与网络协议栈相关的代码,bootp协议、tftp协议、rarp协议和nfs文件系统等实现。

11.tools
生成u-boot工具,例如mkimage。

12.其他
examples等。
sd_fusing:烧写到sd卡的源文件和脚本文件。


 

原文地址:https://www.cnblogs.com/Efronc/p/2371059.html