Uboot介绍

来源:互联网 发布:玄冰400和t400 知乎 编辑:程序博客网 时间:2024/05/16 07:44

1、首先弄清楚什么是u-boot

Uboot是德国DENX小组的开发,它用于多种嵌入式CPU的bootloader程序,   uboot不仅支持嵌入式linux系统的引导,当前,它还支持其他的很多嵌入式操作系统。

            除了PowerPC系列,还支持MIPS,x86,ARM,NIOS,XScale。

 

2、下载完uboot后解压,在根目录下,有如下重要的信息(目录或者文件):

           

board  common cpu disk Doc drivers fs include Lib_xxx net tools 

以下为为每个目录的说明:

 

Board:和一些已有开发板有关的文件。每一个开发板都以一个子目录出现在当前目录中,子目录存放和开发板相关的配置文件。它的每个子文件夹里都有如下文件(以ar7240/ap93为例):

            Makefile

            Config.mk

            Ap93.c                          和板子相关的代码

            Flash.c                          Flash操作代码

            u-boot.lds                      对应的链接文件

 

common:实现uboot命令行下支持的命令,每一条命令都对应一个文件。例如bootm命令对应就是cmd_bootm.c

 

cpu:与特定CPU架构相关目录,每一款Uboot下支持的CPU在该目录下对应一个子目录,比如有子目录mips等。它的每个子文件夹里都有入下文件:

            Makefile

            Config.mk

            Cpu.c                            和处理器相关的代码s

            Interrupts.c                     中断处理代码

            Serial.c                          串口初始化代码

            Start.s                           全局开始启动代码

 

Disk:对磁盘的支持

Doc:文档目录。Uboot有非常完善的文档。

 

Drivers:Uboot支持的设备驱动程序都放在该目录,比如网卡,支持CFI的Flash,串口和USB等。

 

Fs:支持的文件系统,Uboot现在支持cramfs、fat、fdos、jffs2和registerfs。

 

Include:Uboot使用的头文件,还有对各种硬件平台支持的汇编文件,系统的配置文件和对文件系统支持的文件。该目下configs目录有与开发板相关的配置文件,如ar7240_soc.h。该目录下的asm目录有与CPU体系结构相关的头文件,比如说mips对应的有asm-mips。

 

Lib_xxx:与体系结构相关的库文件。如与ARM相关的库放在lib_arm中。

 

Net:与网络协议栈相关的代码,BOOTP协议、TFTP协议、RARP协议和NFS文件系统的实现。

 

Tools:生成Uboot的工具,如:mkimage等等。

0 0
原创粉丝点击