UBoot移植和配置详解
需积分: 10 148 浏览量
更新于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的架构和工作原理,并且需要根据具体的硬件平台进行修改和配置。
176 浏览量
725 浏览量
579 浏览量
330 浏览量
157 浏览量
399 浏览量
223 浏览量
244 浏览量
2011-12-07 上传
![](https://profile-avatar.csdnimg.cn/f6b23891d7a54a3db5afcbabebce9c5e_xianghe1106.jpg!1)
Barry-当下
- 粉丝: 1
最新资源
- C++/C编程高质量指南
- Java面试精华:EJB深入解析与常见问题
- AJAX技术详解:改变网页交互体验
- MyEclipse 6 Java开发完全指南
- exe4j打包jar生成exe的详细步骤与常用设置详解
- 嵌入式Linux移植指南:从基本概念到硬件平台适应
- PCI技术概览:从历史到PCI-X,再到PCI Express
- 深圳教育信息化管理代码规范:类别与编码详解
- UML在短信计费系统分析与设计中的应用
- ASP.NET博客系统开发:基于C#与MVC
- ASP.NET基础函数速查指南
- Java注解系统扩展:JSR308详解
- Java类文件结构解析与校验机制探讨
- IT测试体系实践与指南
- C#编程基础与经典题目解析
- 深入理解Hibernate:实战指南