LV.13 D8 uboot源码配置编译 学习笔记

发布时间:2024年01月05日

一、uboot源码结构

1.1 uboot源码获取

?uboot源码下载 ? ?

????????http://www.denx.de/wiki/U-Boot/ ?

uboot版本命名 ? ?

????????前期:uboot-1.2.3 ? ?

????????现在:uboot-2008.01 ?

uboot版本选择 ? ?

????????支持对应的硬件平台 ? ?

????????相对成熟的版本(资料多)

1.2 uboot特点

代码结构清晰 ?

支持丰富的处理器与开发板,易于移植 ?

支持丰富的用户命令 ?

支持丰富的网络协议 ?

支持丰富的文件系统 ?

支持丰富的设备驱动 ?

更新活跃、用户较多、资料丰富 ?

开放源代码 ?

较高的稳定性 ?

不具有通用性(不同的处理器、开发板uboot不可通用)

1.3 uboot源码结构

平台相关代码 ? ?

????????即与CPU架构或开发板硬件相关的源码,硬件的改动对应的代码也需要进行修改 ? ?

????????arch:与CPU架构相关的源代码 ? ?

???????? board:与开发板相关的源代码,包含各种官方评估板对应的源码

平台无关代码 ? ?

????????api:?? ?应用接口 ? ?

????????common:?? ?uboot命令源码 ? ?

????????disk:?? ?对磁盘设备的支持 ? ?

????????drivers:?? ?设备驱动源码 ? ?

????????fs:?? ??? ?对文件系统的支持?? ? ? ?

????????include:?? ?头文件 ? ?

????????lib:?? ?库 ? ?

????????net:?? ?对网络协议的支持 ? ?

????????post:?? ?上电自检程序 ? ? ... ...

二、uboot的配置与编译

2.1 uboot配置

1.指定当前使用的硬件平台 ?? ?

????????make <board_name>_config ?? ?

????????注1:<board_name>为当前使用的开发板的名字 ?? ?

????????注2:执行该命令的前提是uboot源码支持该开发板 ?? ?

????????注3:该命令必须在uboot源码的顶层目录下执行 ?? ? ?

2.指定编译uboot源码使用的编译器 ?? ?

????????在uboot源码顶层目录下的Makefile中指定(CROSS_COMPILE变量)

?

2.2 uboot编译

1.编译uboot ?? ?

????????make ?? ?

????????注1:该命令必须在uboot源码的顶层目录下执行 ?? ?

????????注2:该命令执行后在uboot源码顶层目录下生成u-boot.bin ?? ? ?

2.清除编译过程中生成的中间文件 ?? ?

????????make clean? ? ?//删除中间文件

????????make distclean? ? ? ? ? ? ?//删除编译生成的所有文件

? ? ? ? 注1:该命令必须在uboot源码的顶层目录下执行

文章来源:https://blog.csdn.net/djjyy/article/details/135309765
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。