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.]

调试

uboot的readme导读(转)相关推荐

  1. arm7 mysql 编译安装_uboot的readme导读(转)

    UBOOT的移植其实并没有想象中的难,这主要归功于众多的工程师已经将常见的平台代码写入了UBOOT,我们所要做的就是一点小小的更改,在网上看了很多相关的移植,也听到有人说其实看了UBOOT的readm ...

  2. u-boot README翻译

    u-boot 根目录README文件 翻译 Summary Status Where to get help Where to get source code Where we come from N ...

  3. uboot中IDE移植

    1.配置 首先要支持IDE需要在CONFIG_COMMANDS中添加CFG_CMD_IDE命令,然后要添加IDE的相关配置信息.不看代码就不知道需要哪些信息,可以先编译一下试试,如果出错就会提示哪些宏 ...

  4. 嵌入式linux开发环境 cpu,嵌入式Linux开发环境的搭建之:U-Boot移植-嵌入式系统-与非网...

    5.2  U-Boot移植 5.2.1  Bootloader介绍 1.概念 简单地说,Bootloader就是在操作系统内核运行之前运行的一段程序,它类似于PC机中的BIOS程序.通过这段程序,可以 ...

  5. 海思uboot启动流程详细分析(二)

    1. 第二个start.S 从start_armboot开始,在startup.c中有包含#include <config.h> 在config.h中: /* Automatically ...

  6. STM32MP157开发笔记 | 04 - TF-A、uboot、linux内核源码获取、编译、烧写

    更新时间 更新内容 2021-12-20 初稿 2022-08-03 更新内核编译部分 一.编译TF-A 1. 获取TF-A源码 下载链接:en.SOURCES-tf-a-stm32mp1-opens ...

  7. u-boot (1) —— 编译分析

    目录 1.编译方式 2.变量.文件分析 2.1.版本号 U_BOOT_VERSION 2.2.主机信息 HOSTARCH.HOSTOS 2.3.静默编译 XECHO 2.4.目标文件目录 BUILD_ ...

  8. Uboot UBI 的移植

    转载地址:http://blog.csdn.net/longfeey/article/details/5887007 作者 :longfeey 1.1         Uboot UBI 的移植 关于 ...

  9. u-boot启动流程分析(1)_平台相关部分

    转自:http://www.wowotech.net/u-boot/boot_flow_1.html 1. 前言 本文将结合u-boot的"board->machine->arc ...

最新文章

  1. python-yield-生成器--的作用
  2. 2020年信号与系统课程批改工作处理程序
  3. vue里碰到 $refs 的问题
  4. POJ1330(最近公共祖先)
  5. 2020Alibaba数学预选赛第1轮试题
  6. Dom4j完整教程~字符串与XML的转换
  7. android学习之-Style样式的定义
  8. Jmeter 抓app包 抓到一半不好用了
  9. Oracle用户角色权限管理
  10. python闭包小例子
  11. 浅谈es6 promise
  12. vim编辑器初级(一)
  13. C语言找出完数并输出
  14. @Transaction注解详解
  15. 神经网络模型-ART 自适应共振网络
  16. Python:WIN10解决matplotlib画图中显示中文宋体英文TimesNewRoman问题
  17. file-saver 实现文件下载
  18. 魔兽私服 启动mysql_魔兽私服TrinityCore 运行调试流程
  19. Typro使用以及安装教程来啦
  20. 下载频道2013年超人气精华资源汇总---全都是免积分下载

热门文章

  1. mysql+代码备份,一个很简单的MYSQL数据库备份脚本代码
  2. 职场打怪,是不是升级越快越好?
  3. Python项目:用微信自动给女朋友每天一句英语问候
  4. 关于私钥加密、公钥加密、签名在生活中的场景
  5. Windows 平台安装 MongoDB
  6. 用rest造句子_rest的用法和短语例句
  7. linux scp命令_太麻烦!使用 Linux scp 命令下载文件到 Windows 桌面
  8. 创业,白手起家需要些什么?
  9. 快手:今年下架抄袭、搬运内容的违规视频20316个
  10. 群辉发布RackStation系列机型——RS3621RPxs、RS3621xs+与RS4021xs+