UBOOT的移植其实并没有想象中的难,这主要归功于众多的工程师已经将常见的平台代码写入了UBOOT,我们所要做的就是一点小小的更改,在网上看了很多相关的移植,也听到有人说其实看了UBOOT的readme就可以了,只可惜全是英文的,实在是下不定决心。现在终于硬着头皮读了起来,一读才发现,原来网上所谓的移植过程其实全是照readme来搞的,readme已经把UBOOT的结构,配置选项,以及移植过程都做了详细的说明,只要照着搞,很容易把UBOOT移植到一个和先前平台相识的平台上来。

本人不才,翻译了一部分,若有错误还请雅正!

我下的版本是Uboot1.3.4

uboot的相关文档和下载方法在

这是官方网站哦 呵呵

开始是介绍Uboot的发展,下载地址,如何获得帮助,以及版本说明

Directory Hierarchy:

目录层次

====================

- boardBoard dependent files

开发板相关文件

- commonMisc architecture independent functions

多体系结构独立函数

- cpuCPU specific files

CPU相关文件

- 74xx_7xxFiles specific to Freescale MPC74xx and 7xx CPUs

Freescale MPC74XX的CPU相关文件

- arm720tFiles specific to ARM 720 CPUs

ARM720相关文件

- arm920tFiles specific to ARM 920 CPUs

ARM920相关文件

- at91rm9200 Files specific to Atmel AT91RM9200 CPU

AT91RM9200相关

- imxFiles specific to Freescale MC9328 i.MX CPUs

Freescale i.MX相关

- s3c24x0Files specific to Samsung S3C24X0 CPUs

- arm925tFiles specific to ARM 925 CPUs

- arm926ejsFiles specific to ARM 926 CPUs

- arm1136Files specific to ARM 1136 CPUs

- at32apFiles specific to Atmel AVR32 AP CPUs

- i386Files specific to i386 CPUs

- ixpFiles specific to Intel XScale IXP CPUs

- leon2Files specific to Gaisler LEON2 SPARC CPU

- leon3Files specific to Gaisler LEON3 SPARC CPU

- mcf52x2Files specific to Freescale ColdFire MCF52x2 CPUs

- mcf5227xFiles specific to Freescale ColdFire MCF5227x CPUs

- mcf532xFiles specific to Freescale ColdFire MCF5329 CPUs

- mcf5445xFiles specific to Freescale ColdFire MCF5445x CPUs

- mcf547x_8xFiles specific to Freescale ColdFire MCF547x_8x CPUs

- mipsFiles specific to MIPS CPUs

- mpc5xxFiles specific to Freescale MPC5xxCPUs

- mpc5xxxFiles specific to Freescale MPC5xxx CPUs

- mpc8xxFiles specific to Freescale MPC8xxCPUs

- mpc8220Files specific to Freescale MPC8220 CPUs

- mpc824xFiles specific to Freescale MPC824x CPUs

- mpc8260Files specific to Freescale MPC8260 CPUs

- mpc85xxFiles specific to Freescale MPC85xx CPUs

- niosFiles specific to Altera NIOS CPUs

- nios2Files specific to Altera Nios-II CPUs

- ppc4xxFiles specific to AMCC PowerPC 4xx CPUs

- pxaFiles specific to Intel XScale PXA CPUs

- s3c44b0Files specific to Samsung S3C44B0 CPUs

- sa1100Files specific to Intel StrongARM SA1100 CPUs

- diskCode for disk drive partition handling

磁盘驱动,及分区操作的代码

- docDocumentation (don't expect too much)

文档(不要期待太多(搞不懂为什么了?))

- driversCommonly used device drivers

通用设备驱动

- dttDigital Thermometer and Thermostat drivers

数字温度器及调温装置驱动

- examplesExample code for standalone applications, etc.

独立应用程序的例子

- includeHeader Files

头文件

- lib_armFiles generic to ARMarchitecture

ARM体系结构通用的文件

- lib_avr32Files generic to AVR32architecture

- lib_genericFiles generic to allarchitectures

所有体系结构通用的文件

- lib_i386Files generic to i386architecture

- lib_m68kFiles generic to m68karchitecture

- lib_mipsFiles generic to MIPSarchitecture

- lib_niosFiles generic to NIOSarchitecture

- lib_ppcFiles generic to PowerPC architecture

- lib_sparcFiles generic to SPARCarchitecture

- libfdtLibrary files to support flattened device trees

支持平板设备树的库文件

- netNetworking code

网络代码

- postPower On Self Test

上电自检

- rtcReal Time Clock drivers

实时时钟驱动

- toolsTools 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 _config".

对所有已至此的板都已经有可用的默认配置,只要执行:

make _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/.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 ".c", "flash.c" and "u-boot.lds".

创建一个新的目录来保存你板子的代码,增加你需要的文件。

在你的目录里至少需要"Makefile"、".c"、"flash.c"、"u-boot.lds"

3.Create a new configuration file "include/configs/.h" for

your board

为你的板子创建一个新的配置文件"include/configs/.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 _config" with your new name.

用你的新名运行"make _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.]

调试

arm7 mysql 编译安装_uboot的readme导读(转)相关推荐

  1. mysql 编译安装

    mysql 编译安装 1.创建mysql帐号 [root@localhost ~]# useradd -s /sbin/nologin -M mysql 2.获取安装包 http://mirrors. ...

  2. mysql编译安装原理_MySQL编译安装全过程

    环境介绍 cat /etc/redhat-release uname -a 安装 lrzsz 软件,这个软件和编译安装 mysql 无关,只是为了方便后面通过 xshell 拖拽其他软件 yum -y ...

  3. 安装完MySQL后启动报错_MySQL数据库之mysql编译安装完成后,启动时报错The server quit without updating PID file...

    本文主要向大家介绍了MySQL数据库之mysql编译安装完成后,启动时报错The server quit without updating PID file ,通过具体的内容向大家展现,希望对大家学习 ...

  4. pam mysql编译安装_pam_mysql编译过程排错

    1.报错configure: error: Cannot locate mysql client library. Please check your mysql installation 安装一个包 ...

  5. MySQL编译安装及主从配置

    说明:本实验配置以Cenos6.6和MySQL5.6.35为例 一.编译安装MySQL 1.避免在安装过程中出现问题,先安装系统依赖包 yum install apr autoconf automak ...

  6. linux mysql编译安装mysql_【MySQL安装】Linux下安装MySQL(预编译)

    预编译方式安装MySQL 一.环境说明 操作系统:Redhat Linux 7.2 MySQL版本:5.7 安装介质:mysql-5.7.25-linux-glibc2.12-x86_64.tar.g ...

  7. mysql编译安装后目录空_MySQL源码安装完成后修改安装路径启动问题

    在Linux上源码编译安装完mysql后,又将安装的路径进行了修改,但是发现在设置后环境变量后启动报错,如下: [root@HServer_03 var]# mysqld_safe --user=my ...

  8. mysql 编译安装与rpm安装的区别_编译安装与RPM安装的区别

    建议在安装线上的生产服务器软件包时都用源码安装,这是因为源码安装可以自行调整编译参数,最大化地定制安装结果.这里以MySQL 5线上环境的编译安装来说明之,其编译参数如下所示: ./configure ...

  9. mysql编译安装root密码_MySQL 5.7.11编译安装以及修改root密码小结

    系统是CentOS 6.7 64位的,默认MySQL5.7.11下载到/usr/local/src,安装目录在/app/local/mysql目录下,MySQL数据放置目录/app/local/dat ...

最新文章

  1. mysql存储过程遍历新增_MySQL存储过程:内部调用存储过程、存储过程实现遍历数据库建表以及修改字段...
  2. Oracle imp字符集转换,imp/exp 字符集转换
  3. VMware vsphere client报错问题
  4. 因此,您处于if / else地狱中-这是摆脱困境的方法
  5. 硬笔行书字帖3500常用字_硬笔行书每日一字 · 袁
  6. 嵌入式开发之DSP学习
  7. PDown(百度网盘第三方不限速下载工具)
  8. openstack RPM打包
  9. html格式蠕虫病毒,XiaoBa自制蠕虫病毒[2018-1-10]
  10. Mockito单元测试
  11. 系统完全优化 全面剖析XP
  12. ESP32编译运行ADF音频库
  13. 高效清除电脑中的灰尘。。。。社会工程学真的很管用
  14. jquery 自动触发 标签的click()方法
  15. Web前端:改变鼠标样式
  16. 人人都是设计师:主流七种平面版式
  17. 关于线性条形码符号的解读(二)
  18. 计算机左边不显示桌面按键,显示桌面图标不见了怎么办?快捷键是什么?电脑开机不显示桌面。...
  19. 神州信息出席2021中关村金融科技节并做主题演讲
  20. EasyPoi横向遍历的用法(不懂就问)

热门文章

  1. Zookeeper数据的同步流程
  2. 返回后通知(After Return Advice)
  3. 选择Bean 实例化策略
  4. 【源码品读】深入了解FeignContract协议解析过程
  5. 使用SpringTask定时获取传感器设备信息并缓存到Redis
  6. aop简介-aop相关概念
  7. 通过反射获取成员变量并使用
  8. flume案例-文件数据采集-运行测试
  9. 数据库-SQL分类介绍及总结
  10. SpringBoot高级-任务-定时任务