uboot的readme导读
UBOOT的移植其实并没有想象中的难,这主要归功于众多的工程师已经将常见的平台代码写入了UBOOT,我们所要做的就是一点小小的更改,在网上看了很多相关的移植,也听到有人说其实看了UBOOT的readme就可以了,只可惜全是英文的,实在是下不定决心。现在终于硬着头皮读了起来,一读才发现,原来网上所谓的移植过程其实全是照readme来搞的,readme已经把UBOOT的结构,配置选项,以及移植过程都做了详细的说明,只要照着搞,很容易把UBOOT移植到一个和先前平台相识的平台上来。
本人不才,翻译了一部分,若有错误还请雅正!
我下的版本是Uboot1.3.4
uboot的相关文档和下载方法在
http://www.denx.de这是官方网站哦 呵呵
开始是介绍Uboot的发展,下载地址,如何获得帮助,以及版本说明
Directory Hierarchy:
目录层次
====================
- board Board dependent files
开发板相关文件
- common Misc architecture independent functions
多体系结构独立函数
- cpu CPU specific files
CPU相关文件
- 74xx_7xx Files specific to Freescale MPC74xx and 7xx CPUs
Freescale MPC74XX的CPU相关文件
- arm720t Files specific to ARM 720 CPUs
ARM720相关文件
- arm920t Files specific to ARM 920 CPUs
ARM920相关文件
- at91rm9200 Files specific to Atmel AT91RM9200 CPU
AT91RM9200相关
- imx Files specific to Freescale MC9328 i.MX CPUs
Freescale i.MX相关
- s3c24x0 Files specific to Samsung S3C24X0 CPUs
- arm925t Files specific to ARM 925 CPUs
- arm926ejs Files specific to ARM 926 CPUs
- arm1136 Files specific to ARM 1136 CPUs
- at32ap Files specific to Atmel AVR32 AP CPUs
- i386 Files specific to i386 CPUs
- ixp Files specific to Intel XScale IXP CPUs
- leon2 Files specific to Gaisler LEON2 SPARC CPU
- leon3 Files specific to Gaisler LEON3 SPARC CPU
- mcf52x2 Files specific to Freescale ColdFire MCF52x2 CPUs
- mcf5227x Files specific to Freescale ColdFire MCF5227x CPUs
- mcf532x Files specific to Freescale ColdFire MCF5329 CPUs
- mcf5445x Files specific to Freescale ColdFire MCF5445x CPUs
- mcf547x_8x Files specific to Freescale ColdFire MCF547x_8x CPUs
- mips Files specific to MIPS CPUs
- mpc5xx Files specific to Freescale MPC5xx CPUs
- mpc5xxx Files specific to Freescale MPC5xxx CPUs
- mpc8xx Files specific to Freescale MPC8xx CPUs
- mpc8220 Files specific to Freescale MPC8220 CPUs
- mpc824x Files specific to Freescale MPC824x CPUs
- mpc8260 Files specific to Freescale MPC8260 CPUs
- mpc85xx Files specific to Freescale MPC85xx CPUs
- nios Files specific to Altera NIOS CPUs
- nios2 Files specific to Altera Nios-II CPUs
- ppc4xx Files specific to AMCC PowerPC 4xx CPUs
- pxa Files specific to Intel XScale PXA CPUs
- s3c44b0 Files specific to Samsung S3C44B0 CPUs
- sa1100 Files specific to Intel StrongARM SA1100 CPUs
- disk Code for disk drive partition handling
磁盘驱动,及分区操作的代码
- doc Documentation (don't expect too much)
文档(不要期待太多(搞不懂为什么了?))
- drivers Commonly used device drivers
通用设备驱动
- dtt Digital Thermometer and Thermostat drivers
数字温度器及调温装置驱动
- examples Example code for standalone applications, etc.
独立应用程序的例子
- include Header Files
头文件
- lib_arm Files generic to ARM architecture
ARM体系结构通用的文件
- lib_avr32 Files generic to AVR32 architecture
- lib_generic Files generic to all architectures
所有体系结构通用的文件
- lib_i386 Files generic to i386 architecture
- lib_m68k Files generic to m68k architecture
- lib_mips Files generic to MIPS architecture
- lib_nios Files generic to NIOS architecture
- lib_ppc Files generic to PowerPC architecture
- lib_sparc Files generic to SPARC architecture
- libfdt Library files to support flattened device trees
支持平板设备树的库文件
- net Networking code
网络代码
- post Power On Self Test
上电自检
- rtc Real Time Clock drivers
实时时钟驱动
- tools Tools to build S-Record or U-Boot images, etc.
编译S-Record和U-Boot镜像的工具
- api
1.3版本的UBOOT还增加了一个API的文件夹,
这里放的是一些扩展应用的独立的API函数
第一步:
Selection of Processor Architecture and Board Type:
选择处理器架构和板类型:
---------------------------------------------------
For all supported boards there are ready-to-use default
configurations available; just type "make <board_name>_config".
对所有已至此的板都已经有可用的默认配置,只要执行:
make <boare_name>_config
下面是例子
Example: For a TQM823L module type:
cd u-boot
make TQM823L_config
For the Cogent platform, you need to specify the CPU type as well;
e.g. "make cogent_mpc8xx_config". And also configure the cogent
directory according to the instructions in cogent/README.
对于加强型平台还要指定CPU类型,请阅读cogent/READM
····················
第二步
Configuration Options:
配置选项:
----------------------
Configuration depends on the combination of board and CPU type; all
such information is kept in a configuration file
配置依赖于板和CPU,所有配置设置信息保存在:
"include/configs/<board_name>.h".
Example: For a TQM823L module, all configuration settings are in
"include/configs/TQM823L.h".
Many of the options are named exactly as the corresponding Linux
kernel configuration options. The intention is to make it easier to
build a config tool - later.
The following options need to be configured:
以下的选项需要被配置:
这里MPC的配置比较多,如果是SMDK2410的话配置会少很多
- CPU Type: Define exactly one, e.g. CONFIG_MPC85XX.
CPU类型:正确地定义一个种类,比如:CONFIG_MPC85XX
- Board Type: Define exactly one, e.g. CONFIG_MPC8540ADS.
板类型:比如:CONFIG_MPC8540ADS
- CPU Daughterboard Type: (if CONFIG_ATSTK1000 is defined)
Define exactly one, e.g. CONFIG_ATSTK1002
CPU子类
- CPU Module Type: (if CONFIG_COGENT is defined)
Define exactly one of
CONFIG_CMA286_60_OLD
CPU模型
--- FIXME --- not tested yet:
CONFIG_CMA286_60, CONFIG_CMA286_21, CONFIG_CMA286_60P,
CONFIG_CMA287_23, CONFIG_CMA287_50
- Motherboard Type: (if CONFIG_COGENT is defined)
Define exactly one of
CONFIG_CMA101, CONFIG_CMA102
主板
- Motherboard I/O Modules: (if CONFIG_COGENT is defined)
Define one or more of
CONFIG_CMA302
·······
第二步
Building the Software:
编译软件
======================
Building U-Boot has been tested in several native build environments
and in many different cross environments. Of course we cannot support
all possibly existing versions of cross development tools in all
(potentially obsolete) versions. In case of tool chain problems we
recommend to use the ELDK (see http://www.denx.de/wiki/DULG/ELDK)
which is extensively used to build and test U-Boot.
UBOOT已经在很多编译环境下编译成功,但我们不保证所有的交叉编译工具都能使用,如果发生问题,请用ELDK编译工具编译和测试UBOOT
http://www.denx.de/wiki/DULG/ELDK
If the system board that you have is not listed, then you will need
to port U-Boot to your hardware platform.
若你的系统板没有列出来,那你将移植UBOOT到你的硬件平台上
To do this, follow these steps:
遵照一下步骤进行移植:
1. Add a new configuration option for your board to the toplevel
"Makefile" and to the "MAKEALL" script, using the existing
entries as examples.
依照已存在的入口在顶层"Makefile" 和 "MAKEALL"脚本中
增加你板子的配置选项
Note that here and at many other places
boards and other names are listed in alphabetical sort order. Please
keep this order.
板和其他名字都是按字母排序的,请遵照这种顺序
2. Create a new directory to hold your board specific code. Add any
files you need. In your board directory, you will need at least
the "Makefile", a "<board>.c", "flash.c" and "u-boot.lds".
创建一个新的目录来保存你板子的代码,增加你需要的文件。
在你的目录里至少需要"Makefile" 、"<board>.c"、 "flash.c"、"u-boot.lds"
3. Create a new configuration file "include/configs/<board>.h" for
your board
为你的板子创建一个新的配置文件"include/configs/<board>.h"
3. If you're porting U-Boot to a new CPU, then also create a new
directory to hold your CPU specific code. Add any files you need.
若你移植UBOOT到一个新的CPU,你还需建立一个新的目录
来保存你CPU的代码,和文件
4. Run "make <board>_config" with your new name.
用你的新名运行"make <board>_config",
5. Type "make", and you should get a working "u-boot.srec" file
to be installed on your target system.
得到映像文件
6. Debug and solve any problems that might arise.
[Of course, this last step is much harder than it sounds.]
调试
http://space.ednchina.com/Upload/2008/10/23/c1d4ff42-0c98-4423-8a6d-42af3e123250.rarUboot_readme
uboot的readme导读的更多相关文章
- uboot的readme
## (C) Copyright 2000 - 2008# Wolfgang Denk, DENX Software Engineering, wd@denx.de.## See file CREDI ...
- u-boot启动流程分析(1)_平台相关部分
转自:http://www.wowotech.net/u-boot/boot_flow_1.html 1. 前言 本文将结合u-boot的“board—>machine—>arch—> ...
- (五)u-boot2013.01.01 for TQ210:《移植前的准备及u-boot初编译》
移植前的准备 移植前,要做的事情是搭建开发环境以及对U-boot源码的获取.首先说一下开发环境: 1.此次U-boot移植的硬件平台是天嵌的TQ210开发板: CPU:板载核心是S5PV210(Cor ...
- u-boot-2016.07 README文档结构
Author:AP0904225版权声明:本文为博主原创文章,转载请标明出处. 阅读u-boot的README文档,可以获取很多有用的信息,例如从哪里可以获得帮助,帮助:u-boot版本命名规则,目录 ...
- 海思uboot启动流程详细分析(二)
1. 第二个start.S 从start_armboot开始,在startup.c中有包含#include <config.h> 在config.h中: /* Automatically ...
- Tiny4412 U-BOOT移植(转)
http://blog.csdn.net/eshing/article/details/37520291(转) 一.移植前说明: 1. 特别声明:此文档是我的学习文档,里面肯定有错误地方,仅供参考! ...
- 第一章、Tiny4412 U-BOOT移植一 说明【转】
本文转载自:http://blog.csdn.net/eshing/article/details/37520291 一.移植前说明: 1. 特别声明:此文档是我的学习文档,里面肯定有错误地方,仅供 ...
- U-boot2010.06移植--阶段一
2011-02-24 23:14:57 我今天的移植将分如下3步.加上写记录文档,预计时间3小时. 一,不改变源码,完成编译. 二,修改源码,搭建一个U-boot的框架,完成编译. 三,修改源码,完成 ...
- UBI 文件系统移植 sys 设备信息【转】
转自:http://blog.chinaunix.net/uid-25304914-id-3058647.html cat /sys/class/misc/ubi_ctrl/dev --------- ...
随机推荐
- win主机ping不通linux的IP
1.虚拟机的中的linux系统设置成桥接模式 2.点击虚拟机的编辑选择虚拟网络编辑器 3.点击更改设置 4点击还原默认设置即可
- 用chrony代替ntpd时间同步服务器
Chrony是一个开源的自由软件,它能保持系统时钟与时钟服务器(NTP)同步,让时间保持精确. 它由两个程序组成:chronyd和chronyc. chronyd是一个后台运行的守护进程,用于调整内核 ...
- 2、链接数据库+mongodb基础命令行+小demo
链接数据库并且打印出数据的流程:1.在CMD里面输入 mongod 2.在CMD里面输入 mongo 3.在输入mongodb命令行里面进行操作,首先输入 show dbs 来查看是否能够链接得上库4 ...
- nodejs-配置vs code的插件
在windows上安装好npm后,再在终端里使用npm安装express,再安装express-generator 进入express的目录, 在终端中执行 npm install 启动expres ...
- servlet3.0理解
1.servlet是用Java编写的服务器端程序,服务器端程序,服务器端程序. 2.Servlet运行于支持Java的应用服务器中.spring mvc有自己的实现servlet 从原理上讲,Serv ...
- [Design]Ppt处理大段文字
可以用标签类的东西 时间轴
- JS冒泡和闭包案例分析
背景: 今天逛网页发现了百度知道上一个有意思的JS问题,提问者的问题事实上蛮简单的,懂点前端开发技术的应该都能实现.提问者的要求:实现子菜单的弹出,菜单共同拥有三级.每级菜单显示时有500毫秒的延迟. ...
- 连载:面向对象葵花宝典:思想、技巧与实践(30) - SRP原则
前面具体阐述了"高内聚低耦合"的整体设计原则.但怎样让设计满足这个原则,并非一件简单的事情.幸好各位前辈和大牛已经帮我们归纳总结出来了,这就是"设计原则"和&q ...
- tcpdump dns流量监控
tcpdump监听数据 为了看清楚DNS通信的过程,下面我们将从主机1:192.168.0.141上运行host命令以查询主机www.jd.com对应的IP地址,并使用tcpdump抓取这一过程中LA ...
- java中字符串编码转换
Java 正确的做字符串编码转换 字符串的内部表示? 字符串在java中统一用unicode表示( 即utf-16 LE) , 对于 String s = "你好哦!"; 如果源码 ...