整个目录结构分析的思维导图:【腾讯文档】uboot 2016.03目录结构分析

背景说明

我使用的是已经移植到atk-imx6ull开发板上的uboot,基于NXP原厂提供的uboot,版本为2016.03。

uboot未编译的时候,长这样:

编译完成之后,长这样:

一、uboot文件夹目录分析

1. api

mach/arch中给外部app调用的独立的API(与硬件无关)。

2.arch

CPU相关的架构代码。

其中arm架构下的内容:

  • mach-开头:某个具体的ARM处理器相关文件
  • 其它文件夹cpudtslibinclude:是ARM架构处理器通用文件
  • imx-common:本文使用的是NXP提供的uboot,所以该文件夹是NXP添加到imx处理器相关文件

cpu文件夹的内容是某个具体的ARM内核架构,内容如下:

Cortex-A7系列属于ARM v7架构,查看其内容:

这里面就是ARM v7架构底层的一些代码了。

整理arch目录的思维导图如下:

3. board

不同开发板的代码,移植uboot的时候新建开发板bsp也是在这里对应的芯片厂商下面新建


NXP前身是freescale:

其中mx6ullevk是官方板,mx6ullatk是我移植的正点原子开发板。

board目录的思维导图如下:

4. cmd

u-boot命令的实现文件。

5. common

uboot中通用的一些功能实现。

6. configs

存放不同开发板的uboot配置文件,命名规则统一为xxx_defconfig,xxx表示为开发板名称。

移植的时候,通常在官方EVK开发板的配置文件基础上,复制一份自己开发板的,修改即可。

7. disk

8. doc

uboot的一些帮助文档。

9. drivers

u-boot的设备驱动源码,支持非常丰富。

10. dts

存放不同开发板的设备树源码文件,目前该目录为空。

11. examples

u-boot示例代码。

12. fs

uboot支持的文件系统。

13. net

uboot网络相关功能实现。

14. 其它文件夹

  • License:uboot使用的开源许可协议
  • include和lib:uboot需要的头文件和库文件
  • post:上电自检程序
  • scripts:常用的一些脚本
  • test:测试文件夹
  • tools:常用的一些工具

二、uboot文件分析

1. 编译使用的文件

  • .config文件:配置make xxx_defconfig命令后生成
  • Makefileuboot的顶层makefile
  • config.mk:某个Makefile会调用此配置文件

2. 编译出的文件

  • u-boot:编译出的ELF格式的uboot镜像文件
  • u-boot.bin:编译出来的二进制格式的uboot可执行镜像文件
  • u-boot.cfg:uboot的另一种配置文件
  • u-boot.imx:u-boot.bin添加头部信息以后的文件,NXP的CPU专用文件
  • u-boot.lds:链接脚本
  • u-boot.map:uboot映射文件
  • u-boot.srec:S-Record格式的镜像文件
  • u-boot.sym:uboot符号文件
  • u-boot-nodtb.bin:和u-boot.bin一样,u-boot-nodtb.bin的复制文件

uboot研读笔记 | 12 - uboot目录结构分析(2016.03版本)相关推荐

  1. uboot研读笔记 | 13 - uboot编译构建Makefile分析研读(2016.03版本)

    一.uboot的编译 首先来回顾一下uboot如何编译. (1)设置临时环境变量 export ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- (2)指定板级配 ...

  2. uboot研读笔记 | 04 - 移植uboot 2012.04到JZ2440(支持Nor Flash读写)

    项目开源地址:https://github.com/Mculover666/uboot-jz2440 0. 教程完整目录 00 - 嵌入式Linux系统中Bootloader的作用和基本运行原理 01 ...

  3. Uboot专题(一)—— 移植NXP官方Uboot(2016.03版本)

    linux系列目录: linux系统移植篇(二)-- Uboot使用介绍 Uboot专题(一)-- 移植NXP官方Uboot(2016.03版本) 文章目录 一.编译NXP官方uboot 1.获取ub ...

  4. uboot研读笔记 | 05 - 移植uboot 2012.04到JZ2440(支持Nand Flash读写)

    项目开源地址:https://github.com/Mculover666/uboot-jz2440 0. 教程完整目录 00 - 嵌入式Linux系统中Bootloader的作用和基本运行原理 01 ...

  5. linux uboot启动流程分析,uboot启动流程分析

    uboot版本为NXP维护的2016.03版本 下载地址为http://git.freescale.com/git/... 分析uboot的启动流程,需要编译一下uboot,然后打开链接脚本 u-bo ...

  6. 12.08笔记(u-boot启动盘制作)

    文章目录 一.组网过程 二.uboot源码获取 三.uboot源码移植准备过程 四.如何确定<board_name>名字 4.1大概流程: 4.2具体步骤: 五.basic版本启动流程 六 ...

  7. X-003 FriendlyARM tiny4412 uboot移植之添加相应目录文件

    X-003 FriendlyARM tiny4412 uboot移植之添加相应目录文件 <<<<<<<<<<<<<< ...

  8. ARM Uboot经历——makefile与uboot目录

    makefile是个很复杂的东西,但是只要有耐心层层剥下,也能看到你想看到的东西.很遗憾的事,很多人都没有耐心去层层看,我也是. 对于makefile,我也仅仅从基础上了解了它在uboot中的原理和作 ...

  9. uboot开发笔记一之ralink mt7620编译

    uboot开发笔记一之ralink mt7620编译 参考: 1.MTK_Ralink_ApSoC_SDK_4200_20131106.tar.bz2,这个ralink的sdk网上有,自行搜索; MT ...

最新文章

  1. python入门编程题库-Python经典基础编程练习题(六)——每日10题
  2. SIM900A基站定位调试笔记 -转
  3. 归并排序——算法系列
  4. 第十:Pytest中的yield操作
  5. Python yield generator
  6. Spark-生产案例
  7. yolov4训练自己的数据
  8. RHEL 6.3的yum不小心被删除了。如何恢复?
  9. markdown编辑器Typora的使用方法(保姆级教程)
  10. 计算机编程语言用英语怎么说,编程用英语怎么说
  11. 解析Google地图的Search接口返回的f.txt文件数据(其他类似)
  12. “撒旦”勒索病毒再曝4.2变种 腾讯电脑管家文档守护者可一招解密
  13. 《自律100天,穿越人生盲点》读书笔记
  14. Toast的使用详解
  15. mansory使用记录NSLayoutConstraint-代码实现自动布局
  16. 谷奥是一个非商业网站,我们欢迎所有的google用户/google爱好者贡献你的一份力量:
  17. ios控制中心android版,控制中心iOS13
  18. 使用 HTML、CSS 和 JavaScript 制作模拟时钟(初学者教程)
  19. 消防系统计算机网络安全,麦积消防中队组织开展网络安全排查
  20. Matic Network的应用场景大揭秘!

热门文章

  1. linux虚拟机安装MySQL
  2. 微软的可疑更新DhMachineSvc.exe
  3. 量化交易系统c++程序化接口代码
  4. Shfit映像劫持后门新玩法
  5. nagios监控php-fpm,Nginx平台安装Nagios监控服务
  6. 查看linux内核的编译时间,linux内核编译步骤
  7. Spark存储机制源码剖析
  8. 【HEC-RAS】2D模型初步介绍(2)--创建二维网格
  9. JavaScript技术总结6:创建一个范围内的数字
  10. Android App开发 教你分清“沉浸式”和“透明状态栏”