U-Boot技术细节索引

Posted Neutionwei

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了U-Boot技术细节索引相关的知识,希望对你有一定的参考价值。

  • gd(global_data):uboot用来存储全局数据的变量

[uboot] (番外篇)global_data介绍
在某些情况下,uboot是在某些只读存储器上运行,比如ROM、nor flash等等。
在uboot被重定向到RAM(可读可写)之前,我们都无法写入数据,更无法通过全局变量来传递数据。
uboot把global_data放在RAM区,并且使用global_data来存储全局数据。


  • relocate:uboot的重定向动作,也就是将uboot自身镜像拷贝到ddr上的另外一个位置的动作

[uboot] (番外篇)uboot relocation介绍
在某些情况下,uboot是在某些只读存储器上运行,比如ROM、nor flash等等。需要将这部分代码拷贝到DDR上才能完整运行uboot。
(当然,如果我们在spl阶段就把uboot拷贝到ddr上,就不会有这种情况。但是uboot本身就是要考虑各种可能性)
一般会把kernel放在ddr的低端地址上。


  • fdt:flatted device tree(扁平设备树),将部分设备信息结构存放到device tree文件中

[uboot] (番外篇)uboot之fdt介绍


  • dm:driver model(驱动模型),uboot引入的这种驱动模型为驱动的定义和访问接口提供了统一的方法。

[uboot] (番外篇)uboot 驱动模型
组成部分:
1、udevice:简单就是指设备对象,可以理解为kernel中的device。
2、driver:udevice的驱动,可以理解为kernel中的device_driver。和底层硬件设备通信,并且为设备提供面向上层的接口。
3、uclass:使用相同方式的操作集的device的组。相当于是一种抽象。uclass为那些使用相同接口的设备提供了统一的接口。
4、uclass_driver:对应uclass的驱动程序。主要提供uclass操作时,如绑定udevice时的一些操作。
例子:[uboot] (番外篇)uboot dm-gpio使用方法以及工作流程


以上是关于U-Boot技术细节索引的主要内容,如果未能解决你的问题,请参考以下文章

推荐系统[九]项目技术细节讲解z1:Elasticsearch 如何进行快速检索(ES倒排索引和分词原理)以及倒排索引在召回中的应用。

[算法分析]二分查找细节分析与技术要点

mysql索引创建和使用细节

Hbase 技术细节笔记

“我是技术总监,我确实答不出那么多技术细节”

深入解读Service Mesh背后的技术细节