U-Boot深入分析——架构部分

Linux大全评论616 views阅读模式

版本1.3.4,主要针对arm

就u-boot引导以及下载功能来说,最主要的文件夹是如下几个:

board------针对不同开发板

cpu--------针对不同cpu

common-----通用函数(命令,环境变量,控制台,存储等)

drivers----相关的驱动

net--------网络设备驱动

fs---------文件系统

lib_*------各种库(通用的、平台相关的)

board下250个文件夹,代表其支持的至少250种开发板(没有包含,但是能找到与其结构相近的开发板,通过少量修改就能支持),基本上当前所有主流的arm开发板都能支持了(omap系列,s3c系列,pxa系列,i.mx系列等等,可惜的是没有找到对高通msm的支持,不知是否和高通过于封闭的方式有关。)

cpu方面,从arm720t到arm1136,也基本包含了所有的cpu类型。不过看其支持的arm系列都是带有thumb指令的,像arm720,arm920就不在其中,其实现与thumb相关的部分多么?问题保留common下,主要还是各个命令的实现,总的来说,这部分基本不用修改,都是通过增减宏定义来选择加入编译的部分。

drivers,net:都是设备的驱动程序,因为u-boot的功能特点--引导+下载,所以必须的驱动并不需要太多。个人觉得只要有存储设备(flash)、串口设备、以及一个能与主机进行通信的接口设备(网卡、usb口等)就足够了。

企鹅博客
  • 本文由 发表于 2019年10月2日 10:50:09
  • 转载请务必保留本文链接:https://www.qieseo.com/171021.html

发表评论