U-Boot-2011.06的README翻译


翻译不准确的地方请指正。共同学习,一起进步。

#
# (C) Copyright 2000 - 2011
# Wolfgang Denk, DENX Software Engineering, wd@denx.de.
#
# See file CREDITS for list of people who contributed to this project.
# 可以查看CREDITS文件来了解对本项目作出过贡献的人们
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License as
# published by the Free Software Foundation; either version 2 of
# the License, or (at your option) any later version.
# 本程序是自由软件;你可以在遵守自由软件基金会发布的GNU GPL v2及其后
# 版本的条款下发布或修改它;
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
# 本程序发布后希望是有用的,但是没有任何保证,甚至没有隐含的对适销性或针
# 对特定用途的适用性的保证。更多详细信息参见GNU GPL。


# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston,
# MA 02111-1307 USA
#你应该在本程序中同时收到一份GNU GPL许可证,如果没有的话,请向自由软件基金会写信。
#

Summary:
概述:
========

This directory contains the source code for U-Boot, a boot loader for Embedded boards based on PowerPC, ARM, MIPS and several other processors, which can be installed in a boot ROM and used to initialize and test the hardware or to download and run application code.
 这个目录包含的是U-Boot的源代码,U-Boot是一个用于基于PowerPC,ARM,MIPS和一些其他处理器的嵌入式开发板的bootloader。U-Boot可被安装到启动ROM中,用于初始化和测试硬件,或者是下载并运行应用程序代码。

The development of U-Boot is closely related to Linux: some parts of the source code originate in the Linux source tree, we have some header files in common, and special provision has been made to support booting of Linux images.
U-Boot的发展与linux联系紧密:源代码的一些部分源自于linux源码树,还有一些头文件是和Linux共有的,为支持启动Linux镜像,还做了一些特殊的规定。
 
Some attention has been paid to make this software easily configurable and extendable. For instance, all monitor commands are implemented with the same call interface, so that it's very easy to add new commands. Also, instead of permanently adding rarely used code (for instance hardware test utilities) to the monitor, you can load and run it dynamically.
 为使这个软件变得更容易配置和扩展,我们已经注意了一些事项。比如,所有的U-Boot命令都以相同的调用接口实现,所以添加新的命令变得非常简单。此外,对于那些不常用的代码(例如硬件测试程序),你可以动态地加载和运行,而不是将它们永久地添加到U-Boot中。


Status:
状态:
=======

In general, all boards for which a configuration option exists in the Makefile have been tested to some extent and can be considered "working". In fact, many of them are used in production systems.
一般来说,所有存在配置选项的开发板都已经做过一定范围的测试,并且可以认为是能够正常工作的,事实上,它们很多都用于实际的产品中。

In case of problems see the CHANGELOG and CREDITS files to find out who contributed the specific port. The MAINTAINERS file lists board maintainers.
如果出现了问题,可以查看CHANGELOG和CREDITS文件以找出是谁负责这个移植。MAINTAINERS文件列出了每个开发板的维护者。

Where to get help:
从哪里获得帮助:
==================

In case you have questions about, problems with or contributions for U-Boot you should send a message to the U-Boot mailing list at <u-boot@lists.denx.de>. There is also an archive of previous traffic on the mailing list - please search the archive before asking FAQ's. Please see http://lists.denx.de/pipermail/u-boot and http://dir.gmane.org/gmane.comp.boot-loaders.u-boot
如果你有问题或者是要向U-Boot贡献代码,你应该向U-Boot的邮件列表发送一个邮件,邮件列表的地址为<u-boot@lists.denx.de>。邮件列表中有一个以前问题的归档,在你提问之前应该先搜索一下这个归档。请看http://lists.denx.de/pipermail/u-boothttp://dir.gmane.org/gmane.comp.boot-loaders.u-boot

Where to get source code:
从哪里获得源代码:
=========================

The U-Boot source code is maintained in the git repository at git://www.denx.de/git/u-boot.git ; you can browse it online at http://www.denx.de/cgi-bin/gitweb.cgi?p=u-boot.git;a=summary
U-Boot的源代码在git库中维护,地址在git://www.denx.de/git/u-boot.git,你可以在http://www.denx.de/cgi-bin/gitweb.cgi?p=u-boot.git;a=summary上在线浏览源代码。

The "snapshot" links on this page allow you to download tarballs of any version you might be interested in. Official releases are also available for FTP download from the ftp://ftp.denx.de/pub/u-boot/ directory.
你可以使用该页上的"snapshot" (快照)链接来下载你感兴趣的任何版本的tar包,官方的发布版本也可通过FTP来下载,地址为ftp://ftp.denx.de/pub/u-boot/ directory。

Pre-built (and tested) images are available from ftp://ftp.denx.de/pub/u-boot/images/
预先编译和测试好的镜像ftp://ftp.denx.de/pub/u-boot/images/


Where we come from:
我们来自哪里:
===================

- start from 8xxrom sources
- create PPCBoot project (http://sourceforge.net/projects/ppcboot)
- clean up code
- make it easier to add custom boards
- make it possible to add other [PowerPC] CPUs
- extend functions, especially:
  * Provide extended interface to Linux boot loader
  * S-Record download
  * network boot
  * PCMCIA / CompactFlash / ATA disk / SCSI ... boot
- create ARMBoot project (http://sourceforge.net/projects/armboot)
- add other CPU families (starting with ARM)
- create U-Boot project (http://sourceforge.net/projects/u-boot)
- current project page: see http://www.denx.de/wiki/U-Boot

- 起源于8xxrom项目
- 创建了PPCBoot项目(
http://sourceforge.net/projects/ppcboot)
- 清理代码
- 使其更容易添加自定义开发板
- 使添加其他CPU[PowerPC]成为可能
- 扩展功能,尤其是
  * 为linux boot loader提供了扩展接口
  * S-Record下载
  * 网络启动
  * CMCIA / CompactFlash / ATA disk / SCSI ... 启动
- 创建了ARMBoot项目 (
http://sourceforge.net/projects/armboot)
- 添加了其他CPU(从ARM开始)
- 创建了U-Boot项目(
http://sourceforge.net/projects/u-boot)
- 当前项目主页:
http://www.denx.de/wiki/U-Boot


Names and Spelling:
命名和拼写:
===================

The "official" name of this project is "Das U-Boot". The spelling "U-Boot" shall be used in all written text (documentation, comments in source files etc.). Example:
这个项目的官方命名是"Das U-Boot",在所有的文本书写中应使用"U-Boot"这个拼写,如:

 This is the README file for the U-Boot project.
 这是U-Boot项目的README文件

File names etc. shall be based on the string "u-boot". Examples:
文件名等应该使用字符串"u-boot",比如

 include/asm-ppc/u-boot.h

 #include <asm/u-boot.h>

Variable names, preprocessor constants etc. shall be either based on the string "u_boot" or on "U_BOOT". Example:
变量名、预处理常数等应使用基于"u_boot"或"U_BOOT"的名字,如:

 U_BOOT_VERSION  u_boot_logo
 IH_OS_U_BOOT  u_boot_hush_start

Versioning:
版本:
===========

Starting with the release in October 2008, the names of the releases were changed from numerical release numbers without deeper meaning into a time stamp based numbering. Regular releases are identified by names consisting of the calendar year and month of the release date. Additional fields (if present) indicate release candidates or bug fix releases in "stable" maintenance trees.
从2008年10月开始,发行版名字中的版本号由原来用数值表示改为用时间表示,原来用数值表示的版本号没有更深程度的含义,用时间表示的版本号由两部分组成,分别是发行时的年和月。附加的字段(如果出现了的话)指示备选的发行版或者是在稳定版中修复bug后的发行版。

Examples:
 U-Boot v2009.11     - Release November 2009
 U-Boot v2009.11.1   - Release 1 in version November 2009 stable tree
 U-Boot v2010.09-rc1 - Release candiate 1 for September 2010 release

 U-Boot v2009.11     - 2009年11月的发行版
 U-Boot v2009.11.1   - 2009年11月的稳定版基础上修改后的第一个发行版
 U-Boot v2010.09-rc1 - 2010年9月的候选发行版1


Directory Hierarchy:
目录层次:
==================== 
/arch   Architecture specific files                                            体系结构专有文件
    /arm   Files generic to ARM architecture                          ARM体系的文件
        /cpu  CPU specific files                                                   CPU专有文件
            /arm720t  Files specific to ARM 720 CPUs             ARM720t专有文件
            /arm920t  Files specific to ARM 920 CPUs             ARM920t专有文件
            /s3c24x0 Files specific to Samsung S3C24X0 CPUs     三星S3C24X0 CPU专有文件
            ……
        /lib  Architecture specific library files                             体系结构专有库文件
    /avr32  Files generic to AVR32 architecture
        /cpu  CPU specific files
        /lib  Architecture specific library files
    ……
/api   Machine/arch independent API for external apps      外部程序使用的与体系无关的API
/board   Board dependent files                                               开发板相关文件
/common   Misc architecture independent functions          各种体系无关的功能
/disk   Code for disk drive partition handling                        磁盘分区处理的代码
/doc   Documentation (don't expect too much)                     文档(不要希望太多)
/drivers  Commonly used device drivers                               常用的设备驱动
/examples  Example code for standalone applications, etc.   独立应用的示例代码
/fs   Filesystem code (cramfs, ext2, jffs2, etc.)                      文件系统代码
/include  Header Files                                                               头文件
/lib   Files generic to all architectures                                     所有体系共有的文件
    /libfdt  Library files to support flattened device trees       支持flattened设备树的库
    /lzma   Library files to support LZMA decompression     支持LAMA解压的库
    /lzo   Library files to support LZO decompression           支持LZO解压的库
/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镜像的工具


Software Configuration:
软件配置:
=======================

Configuration is usually done using C preprocessor defines; the rationale behind that is to avoid dead code whenever possible.
配置通常使用C预处理器的宏定义;这样做的合理性在于可以避免任何可能的死代码。

There are two classes of configuration variables:
有两种类型的可配置变量:

* Configuration _OPTIONS_:
  These are selectable by the user and have names beginning with  "CONFIG_".
  这些配置是用户可选的,以"CONFIG_"开头命名

* Configuration _SETTINGS_:
  These depend on the hardware etc. and should not be meddled with if you don't know what you're doing; they have names beginning with "CONFIG_SYS_".
  这些配置依赖于硬件等,如果你不知道你在做什么的话,请不要干预,这些配置以"CONFIG_SYS_"开头。

Later we will add a configuration tool - probably similar to or even identical to what's used for the Linux kernel. Right now, we have to do the configuration by hand, which means creating some symbolic links and editing some configuration files. We use the TQM8xxL boards as an example here.
以后我们会添加一个配置工具 - 可能和Linux内核使用的类似甚至完全相同。但是目前我们还必须手工配置,这意味着需要创建一些符号链接并且编写一些配置文件。我们这里使用TQM8xxL开发板作为示例。

  • 1
  • 2
  • 下一页

相关内容