uboot阅读笔记

注:以下的阅读笔记的源程序版本为:u-boot-1.1.6

#

#(C) Copyright 2000 - 2005

#Wolfgang Denk, DENX Software Engineering, wd@denx.de.

#

#See file CREDITS for list of people who contributed to this

#project.

#

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

#

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

#

#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

#

 

Summary:摘要

========

 

Thisdirectory contains the source code for U-Boot, a boot loader for

Embeddedboards based on PowerPC, ARM, MIPS and several other

processors,which can be installed in a boot ROM and used to

initializeand test the hardware or to download and run application

code.

这个目录包含了U-Boot的源码,U-Boot是一个基于PowerPC, ARM, MIPS

和若干其他嵌入式处理板的boot引导,它能够下载到一个boot ROM中并

用于初始化和测试硬件或者下载和运行应用程序。

Thedevelopment of U-Boot is closely related to Linux: some parts of

thesource code originate in the Linux source tree, we have some

headerfiles in common, and special provision has been made to

supportbooting of Linux images.

U-boot的开发非常接近Linux,它的某部分源码来自于Linux代码目录树,

common里面,我们有着相同的头文件,以及特别规定其必须支持引

Linux镜像。

Someattention has been paid to make this software easily

configurableand extendable. For instance, all monitor commands are

implementedwith the same call interface, so that it's very easy to

addnew commands. Also, instead of permanently adding rarely used

code(for instance hardware test utilities) to the monitor, you can

loadand run it dynamically.

某部分已经用于使软件易于配置和扩展。例如,所有监控命令被应用于

相同调用接口,所以它非常容易去添加新命令。而且,这永远代替了使

用添加一些代码到监控器(例如,硬件测试工具),以动态地加载和运

行它。

Status:情形

=======

 

Ingeneral, all boards for which a configuration option exists in the

Makefilehave been tested to some extent and can be considered

"working".In fact, many of them are used in production systems.

 

Incase of problems see the CHANGELOG and CREDITS files to find out

whocontributed the specific port.

通常,在Makefile中存在配置选项的所有板已经被一定程度的测试,可

以认为是可行的。事实上,它们中有许多已经应用于生产系统中了。假

使有问题,请参考CHANGELOG CREDITS文件,找出是谁贡献的

指定部分。

 

Whereto get help:在哪里找到帮助

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

 

Incase you have questions about, problems with or contributions for

U-Bootyou should send a message to the U-Boot mailing list at

<u-boot-users@lists.sourceforge.net>.There is also an archive of

previoustraffic on the mailing list - please search the archive

beforeasking FAQ's. Please see

http://lists.sourceforge.net/lists/listinfo/u-boot-users/

 

 

Wherewe 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 bootloader

  * 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)

 

 

Namesand Spelling:名称和拼写

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

 

The"official" name of this project is "Das U-Boot". Thespelling

"U-Boot"shall be used in all written text (documentation, comments

insource files etc.). Example:

 

       This is the README file for the U-Bootproject.

 

Filenames etc. shall be based on the string "u-boot". Examples:

 

       include/asm-ppc/u-boot.h

 

       #include <asm/u-boot.h>

 

Variablenames, preprocessor constants etc. shall be either based on

thestring "u_boot" or on "U_BOOT". Example:

 

       U_BOOT_VERSION             u_boot_logo

       IH_OS_U_BOOT          u_boot_hush_start

 

 

Versioning:版本管理

===========

 

U-Bootuses a 3 level version number containing a version, a

sub-version,and a patchlevel: "U-Boot-2.34.5" means version "2",

sub-version"34", and patchlevel "4".

 

Thepatchlevel is used to indicate certain stages of development

betweenreleased versions, i. e. officially released versions of

U-Bootwill always have a patchlevel of "0".

 

 

DirectoryHierarchy:目录层次

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

 

-board          Board dependent files板子依赖文件

-common     Misc architecture independentfunctions多体系结构独立函数

-cpu             CPU specific filesCPU相关文件

  - 74xx_7xx       Filesspecific to Freescale MPC74xx and 7xx CPUs

  - arm720t  Filesspecific to ARM 720 CPUs

  - arm920t  Filesspecific to ARM 920 CPUs

    - at91rm9200 Files specific to AtmelAT91RM9200 CPU

    - imx      Filesspecific to Freescale MC9328 i.MX CPUs

    - s3c24x0      Filesspecific to Samsung S3C24X0 CPUs

  - arm925t  Filesspecific to ARM 925 CPUs

  - arm926ejs      Filesspecific to ARM 926 CPUs

  - arm1136 Filesspecific to ARM 1136 CPUs

  - at32ap     Filesspecific to Atmel AVR32 AP CPUs

  - i386  Filesspecific to i386 CPUs

  - ixp           Filesspecific to Intel XScale IXP CPUs

  - mcf52x2  Filesspecific to Freescale ColdFire MCF52x2 CPUs

  - mips Filesspecific to MIPS CPUs

  - mpc5xx   Filesspecific to Freescale MPC5xx  CPUs

  - mpc5xxx  Filesspecific to Freescale MPC5xxx CPUs

  - mpc8xx   Filesspecific to Freescale MPC8xx  CPUs

  - mpc8220 Filesspecific to Freescale MPC8220 CPUs

  - mpc824x Filesspecific to Freescale MPC824x CPUs

  - mpc8260 Filesspecific to Freescale MPC8260 CPUs

  - mpc85xx Filesspecific to Freescale MPC85xx CPUs

  - nios  Filesspecific to Altera NIOS CPUs

  - nios2       Filesspecific to Altera Nios-II CPUs

  - ppc4xx    Filesspecific to AMCC PowerPC 4xx CPUs

  - pxa          Filesspecific to Intel XScale PXA CPUs

  - s3c44b0  Filesspecific to Samsung S3C44B0 CPUs

  - sa1100    Filesspecific to Intel StrongARM SA1100 CPUs

-disk             Code for disk drivepartition handling磁盘驱动及分区处理代码

-doc             Documentation (don'texpect too much) 文档

-drivers  Commonly used device drivers通用设备驱动

-dtt              Digital Thermometer andThermostat drivers数字温度器和调温装置驱动

-examples     Example code for standaloneapplications, etc.独立应用程序的示例代码

-include Header Files头文件

-lib_arm       Files generic to ARM    architectureARM体系结构通用文件

-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 PowerPCarchitecture

-net              Networking code网络代码

-post            Power On Self Test上电自检

-rtc        Real Time Clock drivers实时时钟驱动

-tools           Tools to build S-Record orU-Boot images, etc. 例如编译S-RecordU-Boot镜像工具

 

SoftwareConfiguration:软件配置

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

 

Configurationis usually done using C preprocessor defines; the

rationalebehind that is to avoid dead code whenever possible.

配置通常使用C预定义;在这背后的基本原理是尽可能避免死代码。

Thereare two classes of configuration variables:

有两种级别的配置变量

*Configuration _OPTIONS_:

  These are selectable by the user and havenames beginning with

  "CONFIG_".

 

*Configuration _SETTINGS_:

  These depend on the hardware etc. and shouldnot be meddled with if

  you don't know what you're doing; they havenames beginning with

  "CFG_".

 

Laterwe will add a configuration tool - probably similar to or even

identicalto what's used for the Linux kernel. Right now, we have to

dothe configuration by hand, which means creating some symbolic

linksand editing some configuration files. We use the TQM8xxL boards

asan example here.

 

 

Selectionof Processor Architecture and Board Type:

---------------------------------------------------

 

Forall supported boards there are ready-to-use default

configurationsavailable; just type "make <board_name>_config".

 

Example:For a TQM823L module type:

 

       cd u-boot

       make TQM823L_config

 

Forthe Cogent platform, you need to specify the cpu type as well;

e.g."make cogent_mpc8xx_config". And also configure the cogent

directoryaccording to the instructions in cogent/README.

 

 

ConfigurationOptions:配置选项

----------------------

 

Configurationdepends on the combination of board and CPU type; all

suchinformation is kept in a configuration file

"include/configs/<board_name>.h".

配置依靠结合板和CPU类型;在配置文件中所有信息是活跃的。

Example:For a TQM823L module, all configuration settings are in

"include/configs/TQM823L.h".

 

 

Manyof the options are named exactly as the corresponding Linux

kernelconfiguration options. The intention is to make it easier to

builda config tool - later.

 

 

Thefollowing options need to be configured:

接下来的选项需要配置

-CPU Type:   Define exactly one of CPU类型

 

              PowerPC based CPUs:

              -------------------

              CONFIG_MPC823,       CONFIG_MPC850,       CONFIG_MPC855,       CONFIG_MPC860

       or    CONFIG_MPC5xx

       or    CONFIG_MPC8220

       or    CONFIG_MPC824X,CONFIG_MPC8260

       or    CONFIG_MPC85xx

       or    CONFIG_IOP480

       or    CONFIG_405GP

       or    CONFIG_405EP

       or    CONFIG_440

       or    CONFIG_MPC74xx

       or    CONFIG_750FX

 

              ARM based CPUs:

              ---------------

              CONFIG_SA1110

              CONFIG_ARM7

              CONFIG_PXA250

              CONFIG_CPU_MONAHANS

 

              MicroBlaze based CPUs:

              ----------------------

              CONFIG_MICROBLAZE

 

              Nios-2 based CPUs:

              ----------------------

              CONFIG_NIOS2

 

              AVR32 based CPUs:

              ----------------------

              CONFIG_AT32AP

 

-Board Type:       Define exactly one of板类型

 

              PowerPC based boards:

              ---------------------

 

              CONFIG_ADCIOP         CONFIG_FPS860L        CONFIG_OXC

              CONFIG_ADS860         CONFIG_GEN860T              CONFIG_PCI405

              CONFIG_AMX860        CONFIG_GENIETV              CONFIG_PCIPPC2

              CONFIG_AP1000         CONFIG_GTH        CONFIG_PCIPPC6

              CONFIG_AR405           CONFIG_gw8260         CONFIG_pcu_e

              CONFIG_BAB7xx          CONFIG_hermes          CONFIG_PIP405

              CONFIG_BC3450         CONFIG_hymod          CONFIG_PM826

              CONFIG_c2mon           CONFIG_IAD210         CONFIG_ppmc8260

              CONFIG_CANBT           CONFIG_ICU862          CONFIG_QS823

              CONFIG_CCM              CONFIG_IP860            CONFIG_QS850

              CONFIG_CMI        CONFIG_IPHASE4539  CONFIG_QS860T

              CONFIG_cogent_mpc8260 CONFIG_IVML24         CONFIG_RBC823

              CONFIG_cogent_mpc8xx    CONFIG_IVML24_128 CONFIG_RPXClassic

              CONFIG_CPCI405        CONFIG_IVML24_256 CONFIG_RPXlite

              CONFIG_CPCI4052             CONFIG_IVMS8           CONFIG_RPXsuper

              CONFIG_CPCIISER4    CONFIG_IVMS8_128   CONFIG_rsdproto

              CONFIG_CPU86           CONFIG_IVMS8_256   CONFIG_sacsng

              CONFIG_CRAYL1         CONFIG_JSE         CONFIG_Sandpoint8240

              CONFIG_CSB272         CONFIG_LANTEC         CONFIG_Sandpoint8245

              CONFIG_CU824           CONFIG_LITE5200B    CONFIG_sbc8260

              CONFIG_DASA_SIM            CONFIG_lwmon           CONFIG_sbc8560

              CONFIG_DB64360              CONFIG_MBX              CONFIG_SM850

              CONFIG_DB64460              CONFIG_MBX860T             CONFIG_SPD823TS

              CONFIG_DU405          CONFIG_MHPC            CONFIG_STXGP3

              CONFIG_DUET_ADS           CONFIG_MIP405         CONFIG_SXNI855T

              CONFIG_EBONY          CONFIG_MOUSSE        CONFIG_TQM823L

              CONFIG_ELPPC           CONFIG_MPC8260ADS       CONFIG_TQM8260

              CONFIG_ELPT860              CONFIG_MPC8540ADS       CONFIG_TQM850L

              CONFIG_ep8260         CONFIG_MPC8540EVAL      CONFIG_TQM855L

              CONFIG_ERIC              CONFIG_MPC8560ADS       CONFIG_TQM860L

              CONFIG_ESTEEM192E       CONFIG_MUSENKI              CONFIG_TTTech

              CONFIG_ETX094         CONFIG_MVS1            CONFIG_UTX8245

              CONFIG_EVB64260            CONFIG_NETPHONE           CONFIG_V37

              CONFIG_FADS823              CONFIG_NETTA           CONFIG_W7OLMC

              CONFIG_FADS850SAR CONFIG_NETVIA          CONFIG_W7OLMG

              CONFIG_FADS860T            CONFIG_NX823           CONFIG_WALNUT

              CONFIG_FLAGADM             CONFIG_OCRTC          CONFIG_ZPC1900

              CONFIG_FPS850L        CONFIG_ORSG            CONFIG_ZUMA

 

              ARM based boards:

              -----------------

 

              CONFIG_ARMADILLO, CONFIG_AT91RM9200DK,  CONFIG_CERF250,

              CONFIG_CSB637,        CONFIG_DELTA,          CONFIG_DNP1110,

              CONFIG_EP7312,        CONFIG_H2_OMAP1610,    CONFIG_HHP_CRADLE,

              CONFIG_IMPA7,      CONFIG_INNOVATOROMAP1510,     CONFIG_INNOVATOROMAP1610,

              CONFIG_KB9202,        CONFIG_LART,            CONFIG_LPD7A400,

              CONFIG_LUBBOCK,             CONFIG_OSK_OMAP5912, CONFIG_OMAP2420H4,

              CONFIG_PLEB2,          CONFIG_SHANNON,            CONFIG_P2_OMAP730,

              CONFIG_SMDK2400,   CONFIG_SMDK2410,   CONFIG_TRAB,

              CONFIG_VCMA9

 

              MicroBlaze based boards:

              ------------------------

 

              CONFIG_SUZAKU

 

              Nios-2 based boards:

              ------------------------

 

              CONFIG_PCI5441 CONFIG_PK1C20

              CONFIG_EP1C20 CONFIG_EP1S10CONFIG_EP1S40

 

              AVR32 based boards:

              -------------------

 

              CONFIG_ATSTK1000

 

-CPU Daughterboard Type: (if CONFIG_ATSTK1000 is defined) CPU子类型

 

              Define exactly one of

              CONFIG_ATSTK1002

 

-CPU Module Type: (if CONFIG_COGENT is defined)CPU模块类型

              Define exactly one of

              CONFIG_CMA286_60_OLD

---FIXME --- not tested yet:FIXME

              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)母板IO模块

              Define one or more of

              CONFIG_CMA302

 

-Motherboard Options: (if CONFIG_CMA101 or CONFIG_CMA102 are defined)母板选项

              Define one or more of

              CONFIG_LCD_HEARTBEAT - update a character position on

                                     the lcd display every second with

                                     a "rotator" |\-/|\-/

 

-Board flavour: (if CONFIG_MPC8260ADS is defined)flavour

              CONFIG_ADSTYPE

              Possible values are:

                     CFG_8260ADS      - original MPC8260ADS

                     CFG_8266ADS      - MPC8266ADS

                     CFG_PQ2FADS     - PQ2FADS-ZU or PQ2FADS-VR

                     CFG_8272ADS      - MPC8272ADS

 

-MPC824X Family Member (if CONFIG_MPC824X is defined) MPC824X家族内存

              Define exactly one of

              CONFIG_MPC8240, CONFIG_MPC8245

 

-8xx CPU Options: (if using an MPC8xx cpu) 8xx CPU选项

              CONFIG_8xx_GCLK_FREQ  - deprecated: CPU clock if

                                     get_gclk_freq() cannot work

                                     e.g. if there is no 32KHz

                                     reference PIT/RTC clock

              CONFIG_8xx_OSCLK   - PLL input clock (either EXTCLK

                                     or XTAL/EXTAL)

 

-859/866/885 CPU options: (if using a MPC859 or MPC866 or MPC885 CPU): 859/866/885 CPU选项

              CFG_8xx_CPUCLK_MIN

              CFG_8xx_CPUCLK_MAX

              CONFIG_8xx_CPUCLK_DEFAULT

                     See doc/README.MPC866

 

              CFG_MEASURE_CPUCLK

 

              Define this to measure the actualCPU clock instead

              of relying on the correctness ofthe configured

              values. Mostly useful for boardbringup to make sure

              the PLL is locked at the intendedfrequency. Note

              that this requires a (stable)reference clock (32 kHz

              RTC clock or CFG_8XX_XIN)

 

-Intel Monahans options:英特尔系列选项

              CFG_MONAHANS_RUN_MODE_OSC_RATIO

 

              Defines the Monahans run mode tooscillator

              ratio. Valid values are 8, 16, 24,31. The core

              frequency is this value multipliedby 13 MHz.

 

              CFG_MONAHANS_TURBO_RUN_MODE_RATIO

 

              Defines the Monahans turbo mode tooscillator

              ratio. Valid values are 1 (defaultif undefined) and

              2. The core frequency ascalculated above is multiplied

              by this value.

 

-Linux Kernel Interface:Linux内核接口

              CONFIG_CLOCKS_IN_MHZ

 

              U-Boot stores all clockinformation in Hz

              internally. For binarycompatibility with older Linux

              kernels (which expect the clockspassed in the

              bd_info data to be in MHz) theenvironment variable

              "clocks_in_mhz" can bedefined so that U-Boot

              converts clock data to MHZ beforepassing it to the

              Linux kernel.

              When CONFIG_CLOCKS_IN_MHZ isdefined, a definition of

              "clocks_in_mhz=1"is  automatically  included in  the

              default environment.

 

              CONFIG_MEMSIZE_IN_BYTES          [relevant for MIPS only]

 

              When transfering memsize parameterto linux, some versions

              expect it to be in bytes, othersin MB.

              Define CONFIG_MEMSIZE_IN_BYTES tomake it in bytes.

 

              CONFIG_OF_FLAT_TREE

 

              New kernel versions are expectingfirmware settings to be

              passed using flat open firmwaretrees.

              The environment variable"disable_of", when set, disables this

              functionality.

 

              CONFIG_OF_FLAT_TREE_MAX_SIZE

 

              The maximum size of theconstructed OF tree.

 

              OF_CPU - The proper name of thecpus node.

              OF_SOC - The proper name of thesoc node.

              OF_TBCLK - The timebase frequency.

              OF_STDOUT_PATH - The path to theconsole device

 

              CONFIG_OF_HAS_BD_T

 

              The resulting flat device treewill have a copy of the bd_t.

              Space should be pre-allocated inthe dts for the bd_t.

 

              CONFIG_OF_HAS_UBOOT_ENV

 

              The resulting flat device treewill have a copy of u-boot's

              environment variables

 

              CONFIG_OF_BOARD_SETUP

 

              Board code has additionmodification that it wants to make

              to the flat device tree beforehanding it off to the kernel

 

              CONFIG_OF_BOOT_CPU

 

              This define fills in the correctboot cpu in the boot

              param header, the default value iszero if undefined.

 

-Serial Ports:串口

              CFG_PL010_SERIAL

 

              Define this if you want supportfor Amba PrimeCell PL010 UARTs.

 

              CFG_PL011_SERIAL

 

              Define this if you want supportfor Amba PrimeCell PL011 UARTs.

 

              CONFIG_PL011_CLOCK

 

              If you have Amba PrimeCell PL011UARTs, set this variable to

              the clock speed of the UARTs.

 

              CONFIG_PL01x_PORTS

 

              If you have Amba PrimeCell PL010or PL011 UARTs on your board,

              define this to a list of baseaddresses for each (supported)

              port. See e.g.include/configs/versatile.h

 

 

-Console Interface:控制台接口

              Depending on board, define exactlyone serial port

              (like CONFIG_8xx_CONS_SMC1,CONFIG_8xx_CONS_SMC2,

              CONFIG_8xx_CONS_SCC1, ...), orswitch off the serial

              console by definingCONFIG_8xx_CONS_NONE

 

              Note: if CONFIG_8xx_CONS_NONE isdefined, the serial

              port routines must be definedelsewhere

              (i.e. serial_init(),serial_getc(), ...)

 

              CONFIG_CFB_CONSOLE

              Enables console device for a colorframebuffer. Needs following

              defines (cf. smiLynxEM, i8042,board/eltec/bab7xx)

                     VIDEO_FB_LITTLE_ENDIAN      graphic memory organisation

                                          (defaultbig endian)

                     VIDEO_HW_RECTFILL graphic chip supports

                                          rectanglefill

                                          (cf.smiLynxEM)

                     VIDEO_HW_BITBLT           graphic chip supports

                                          bit-blit(cf. smiLynxEM)

                     VIDEO_VISIBLE_COLS       visible pixel columns

                                          (cols=pitch)

                     VIDEO_VISIBLE_ROWS      visible pixel rows

                     VIDEO_PIXEL_SIZE     bytes per pixel

                     VIDEO_DATA_FORMAT      graphic data format

                                          (0-5,cf. cfb_console.c)

                     VIDEO_FB_ADRS        framebuffer address

                     VIDEO_KBD_INIT_FCT       keyboard int fct

                                          (i.e. i8042_kbd_init())

                     VIDEO_TSTC_FCT              test char fct

                                          (i.e.i8042_tstc)

                     VIDEO_GETC_FCT              get char fct

                                          (i.e.i8042_getc)

                     CONFIG_CONSOLE_CURSOR     cursor drawing on/off

                                          (requiresblink timer

                                          cf.i8042.c)

                     CFG_CONSOLE_BLINK_COUNTblink interval (cf. i8042.c)

                     CONFIG_CONSOLE_TIME   display time/date info in

                                          upperright corner

                                          (requiresCFG_CMD_DATE)

                     CONFIG_VIDEO_LOGO       display Linux logo in

                                          upperleft corner

                     CONFIG_VIDEO_BMP_LOGO     use bmp_logo.h instead of

                                          linux_logo.hfor logo.

                                          RequiresCONFIG_VIDEO_LOGO

                     CONFIG_CONSOLE_EXTRA_INFO

                                          addionalboard info beside

                                          thelogo

 

              When CONFIG_CFB_CONSOLE isdefined, video console is

              default i/o. Serial console can beforced with

              environment 'console=serial'.

 

              When CONFIG_SILENT_CONSOLE isdefined, all console

              messages (by U-Boot and Linux!)can be silenced with

              the "silent" environmentvariable. See

              doc/README.silent for moreinformation.

 

-Console Baudrate:控制台波特率

              CONFIG_BAUDRATE - in bps

              Select one of the baudrates listedin

              CFG_BAUDRATE_TABLE, see below.

              CFG_BRGCLK_PRESCALE, baudrateprescale

 

-Interrupt driven serial port input:中断驱动串口输入

              CONFIG_SERIAL_SOFTWARE_FIFO

 

              PPC405GP only.

              Use an interrupt handler forreceiving data on the

              serial port. It also enables usinghardware handshake

              (RTS/CTS) and UART's built-inFIFO. Set the number of

              bytes the interrupt driven inputbuffer should have.

 

              Leave undefined to disable thisfeature, including

              disable the buffer and hardwarehandshake.

 

-Console UART Number:控制台串口数量

              CONFIG_UART1_CONSOLE

 

              AMCC PPC4xx only.

              If defined internal UART1 (and notUART0) is used

              as default U-Boot console.

 

-Boot Delay: CONFIG_BOOTDELAY - in secondsBoot延时

              Delay before automatically bootingthe default image;

              set to -1 to disable autoboot.

 

              See doc/README.autoboot for theseoptions that

              work with CONFIG_BOOTDELAY. Noneare required.

              CONFIG_BOOT_RETRY_TIME

              CONFIG_BOOT_RETRY_MIN

              CONFIG_AUTOBOOT_KEYED

              CONFIG_AUTOBOOT_PROMPT

              CONFIG_AUTOBOOT_DELAY_STR

              CONFIG_AUTOBOOT_STOP_STR

              CONFIG_AUTOBOOT_DELAY_STR2

              CONFIG_AUTOBOOT_STOP_STR2

              CONFIG_ZERO_BOOTDELAY_CHECK

              CONFIG_RESET_TO_RETRY

 

-Autoboot Command:自动boot命令

              CONFIG_BOOTCOMMAND

              Only needed when CONFIG_BOOTDELAYis enabled;

              define a command string that isautomatically executed

              when no character is read on theconsole interface

              within "Boot Delay"after reset.

 

              CONFIG_BOOTARGS

              This can be used to pass argumentsto the bootm

              command. The value ofCONFIG_BOOTARGS goes into the

              environment value"bootargs".

 

              CONFIG_RAMBOOT and CONFIG_NFSBOOT

              The value of these goes into theenvironment as

              "ramboot" and"nfsboot" respectively, and can be used

              as a convenience, when switchingbetween booting from

              ram and nfs.

 

-Pre-Boot Commands: Pre-Boot命令

              CONFIG_PREBOOT

 

              When this option is #defined, theexistence of the

              environment variable"preboot" will be checked

              immediately before starting theCONFIG_BOOTDELAY

              countdown and/or running theauto-boot command resp.

              entering interactive mode.

 

              This feature is especially usefulwhen "preboot" is

              automatically generated ormodified. For an example

              see the LWMON board specific code:here "preboot" is

              modified when the user holds downa certain

              combination of keys on the(special) keyboard when

              booting the systems

 

-Serial Download Echo Mode:串口下载Echo模式

              CONFIG_LOADS_ECHO

              If defined to 1, all charactersreceived during a

              serial download (using the"loads" command) are

              echoed back. This might be neededby some terminal

              emulations (like "cu"),but may as well just take

              time on others. This setting#define's the initial

              value of the"loads_echo" environment variable.

 

-Kgdb Serial Baudrate: (if CFG_CMD_KGDB is defined) Kgdb串口波特率

              CONFIG_KGDB_BAUDRATE

              Select one of the baudrates listedin

              CFG_BAUDRATE_TABLE, see below.

 

-Monitor Functions:监控功能

              CONFIG_COMMANDS

              Most monitor functions can beselected (or

              de-selected) by adjusting thedefinition of

              CONFIG_COMMANDS; to selectindividual functions,

              #define CONFIG_COMMANDS by"OR"ing any of the

              following values:

 

              #define enables commands:

              -------------------------

              CFG_CMD_ASKENV      * ask for env variable

              CFG_CMD_AUTOSCRIPT AutoscriptSupport

              CFG_CMD_BDI       bdinfo

              CFG_CMD_BEDBUG     * Include BedBug Debugger

              CFG_CMD_BMP    * BMP support

              CFG_CMD_BSP     * Board specific commands

              CFG_CMD_BOOTD       bootd

              CFG_CMD_CACHE * icache, dcache

              CFG_CMD_CONSOLE    coninfo

              CFG_CMD_DATE  * support for RTC, date/time...

              CFG_CMD_DHCP  * DHCP support

              CFG_CMD_DIAG   * Diagnostics

              CFG_CMD_DOC    * Disk-On-Chip Support

              CFG_CMD_DTT    * Digital Therm and Thermostat

              CFG_CMD_ECHO    echoarguments

              CFG_CMD_EEPROM    * EEPROM read/write support

              CFG_CMD_ELF     * bootelf, bootvx

              CFG_CMD_ENV       saveenv

              CFG_CMD_FDC     * Floppy Disk Support

              CFG_CMD_FAT     * FAT partition support

              CFG_CMD_FDOS  * Dos diskette Support

              CFG_CMD_FLASH   flinfo,erase, protect

              CFG_CMD_FPGA     FPGAdevice initialization support

              CFG_CMD_HWFLOW   * RTS/CTS hw flow control

              CFG_CMD_I2C      * I2C serial bus support

              CFG_CMD_IDE     * IDE harddisk support

              CFG_CMD_IMI        iminfo

              CFG_CMD_IMLS     Listall found images

              CFG_CMD_IMMAP       * IMMR dump support

              CFG_CMD_IRQ     * irqinfo

              CFG_CMD_ITEST   Integer/string test of 2 values

              CFG_CMD_JFFS2  * JFFS2 Support

              CFG_CMD_KGDB  * kgdb

              CFG_CMD_LOADB        loadb

              CFG_CMD_LOADS        loads

              CFG_CMD_MEMORY     md,mm, nm, mw, cp, cmp, crc, base,

                              loop, loopw, mtest

              CFG_CMD_MISC     Miscfunctions like sleep etc

              CFG_CMD_MMC   * MMC memory mapped support

              CFG_CMD_MII      * MII utility commands

              CFG_CMD_NAND  * NAND support

              CFG_CMD_NET       bootp, tftpboot, rarpboot

              CFG_CMD_PCI      * pciinfo

              CFG_CMD_PCMCIA      * PCMCIA support

              CFG_CMD_PING   * send ICMP ECHO_REQUEST to network host

              CFG_CMD_PORTIO     * Port I/O

              CFG_CMD_REGINFO * Register dump

              CFG_CMD_RUN      run command in envvariable

              CFG_CMD_SAVES * save S record dump

              CFG_CMD_SCSI    * SCSI Support

              CFG_CMD_SDRAM      * print SDRAM configuration information

                              (requires CFG_CMD_I2C)

              CFG_CMD_SETGETDCR Support for DCRRegister access (4xx only)

              CFG_CMD_SPI      * SPI serial bus support

              CFG_CMD_USB     * USB support

              CFG_CMD_VFD     * VFD support (TRAB)

              CFG_CMD_BSP     * Board SPecific functions

              CFG_CMD_CDP    *

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值