UBoot移植和配置详解
需积分: 10 93 浏览量
更新于2024-09-17
收藏 76KB DOC 举报
Uboot分析和笔记
Uboot是目前主流的Bootloader之一,由ppcboot和armboot合并而成。它支持很多平台,移植Uboot时需要找到一个自己板子的原形(即自己的板子是在这个板子上做一些修改而来的)的版本,这样可以事半功倍。
Uboot移植的主要步骤包括:
1. 修改./include/configs/xxxx.h文件,该文件主要定义了flash、sdram的起始地址等信息。需要修改flash的起始地址、大小,有时候会有位宽等。
2. 修改./board/xxxxx/*目录下的文件,该目录下主要有两三个.c文件,主要为该平台的初始化和flash操作的函数。
3. 修改./cpu/xxxxxx/arch_xxx/xxxxxx/*目录下的文件,该目录下主要是此cpu的初始等函数。
在移植Uboot时,需要修改的地方可能会有:
* flash的起始地址、大小
* 内存大小(内存的起始地址应该都是0)
* uboot设置信息保存的地址和长度
* console口和它的波特率
* 默认的设置
* uboot的入口地址等
如果不是从相同的平台移植,可能需要修改一些和此cpu相关的一些寄存器、频率和内存等硬件方面的东西,这时候需要参考cpu的datasheet和到网上找一些资料了并且慢慢试了。
另外一个常需要修改的地方是flash的驱动,一般会在./board/xxxx/flash.c文件中。这个可以从uboot的别的./board/目录中拷贝一个支持该flash的驱动过来。
在编译Uboot前需要配置,这个配置不是执行./configure,也不是make menuconfig。
Uboot的bootmaddr_kerneladdr_initrd是Uboot启动过程中的三个主要步骤:
1. bootmaddr:加载内核的地址
2. kerneladdr:加载内核的地址
3. initrd:初始化根文件系统
Uboot的配置文件主要包括了flash、sdram的起始地址等信息,需要根据具体的硬件平台进行修改。
Uboot的移植需要根据具体的硬件平台进行修改,需要了解Uboot的架构和工作原理,了解flash、sdram、cpu等硬件方面的知识,并且需要有丰富的编程经验和调试技能。
Uboot的分析和移植需要系统地了解Uboot的架构和工作原理,并且需要根据具体的硬件平台进行修改和配置。
2013-02-28 上传
2021-09-09 上传
2016-10-21 上传
2011-04-26 上传
2021-09-09 上传
2011-12-07 上传
2022-08-04 上传
点击了解资源详情
2021-04-20 上传
Barry-当下
- 粉丝: 1
- 资源: 17
最新资源
- Fisher Iris Setosa数据的主成分分析及可视化- Matlab实现
- 深入理解JavaScript类与面向对象编程
- Argspect-0.0.1版本Python包发布与使用说明
- OpenNetAdmin v09.07.15 PHP项目源码下载
- 掌握Node.js: 构建高性能Web服务器与应用程序
- Matlab矢量绘图工具:polarG函数使用详解
- 实现Vue.js中PDF文件的签名显示功能
- 开源项目PSPSolver:资源约束调度问题求解器库
- 探索vwru系统:大众的虚拟现实招聘平台
- 深入理解cJSON:案例与源文件解析
- 多边形扩展算法在MATLAB中的应用与实现
- 用React类组件创建迷你待办事项列表指南
- Python库setuptools-58.5.3助力高效开发
- fmfiles工具:在MATLAB中查找丢失文件并列出错误
- 老枪二级域名系统PHP源码简易版发布
- 探索DOSGUI开源库:C/C++图形界面开发新篇章