README: update documentation (availability, links, etc.)

Signed-off-by: Wolfgang Denk <wd@denx.de>
This commit is contained in:
Wolfgang Denk 2008-03-26 10:40:12 +01:00
parent f6b44e0e4d
commit 218ca724c0

157
README
View file

@ -1,5 +1,5 @@
# #
# (C) Copyright 2000 - 2005 # (C) Copyright 2000 - 2008
# Wolfgang Denk, DENX Software Engineering, wd@denx.de. # Wolfgang Denk, DENX Software Engineering, wd@denx.de.
# #
# See file CREDITS for list of people who contributed to this # See file CREDITS for list of people who contributed to this
@ -51,7 +51,8 @@ Makefile have been tested to some extent and can be considered
"working". In fact, many of them are used in production systems. "working". In fact, many of them are used in production systems.
In case of problems see the CHANGELOG and CREDITS files to find out In case of problems see the CHANGELOG and CREDITS files to find out
who contributed the specific port. who contributed the specific port. The MAINTAINERS file lists board
maintainers.
Where to get help: Where to get help:
@ -65,6 +66,22 @@ before asking FAQ's. Please see
http://lists.sourceforge.net/lists/listinfo/u-boot-users/ http://lists.sourceforge.net/lists/listinfo/u-boot-users/
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
The "snapshot" links on this page allow you to download tarballs of
any version you might be interested in. Ofifcial releases are also
available for FTP download from the ftp://ftp.denx.de/pub/u-boot/
directory.
Pre-build (and tested) images are available from
ftp://ftp.denx.de/pub/u-boot/images/
Where we come from: Where we come from:
=================== ===================
@ -81,6 +98,7 @@ Where we come from:
- create ARMBoot project (http://sourceforge.net/projects/armboot) - create ARMBoot project (http://sourceforge.net/projects/armboot)
- add other CPU families (starting with ARM) - add other CPU families (starting with ARM)
- create U-Boot project (http://sourceforge.net/projects/u-boot) - create U-Boot project (http://sourceforge.net/projects/u-boot)
- current project page: see http://www.denx.de/wiki/UBoot
Names and Spelling: Names and Spelling:
@ -168,7 +186,7 @@ Directory Hierarchy:
- lib_mips Files generic to MIPS architecture - lib_mips Files generic to MIPS architecture
- lib_nios Files generic to NIOS architecture - lib_nios Files generic to NIOS architecture
- lib_ppc Files generic to PowerPC architecture - lib_ppc Files generic to PowerPC architecture
- libfdt Library files to support flattened device trees - libfdt Library files to support flattened device trees
- net Networking code - net Networking code
- post Power On Self Test - post Power On Self Test
- rtc Real Time Clock drivers - rtc Real Time Clock drivers
@ -320,7 +338,7 @@ The following options need to be configured:
converts clock data to MHZ before passing it to the converts clock data to MHZ before passing it to the
Linux kernel. Linux kernel.
When CONFIG_CLOCKS_IN_MHZ is defined, a definition of When CONFIG_CLOCKS_IN_MHZ is defined, a definition of
"clocks_in_mhz=1" is automatically included in the "clocks_in_mhz=1" is automatically included in the
default environment. default environment.
CONFIG_MEMSIZE_IN_BYTES [relevant for MIPS only] CONFIG_MEMSIZE_IN_BYTES [relevant for MIPS only]
@ -686,9 +704,9 @@ The following options need to be configured:
CONFIG_MAC_PARTITION and/or CONFIG_DOS_PARTITION CONFIG_MAC_PARTITION and/or CONFIG_DOS_PARTITION
and/or CONFIG_ISO_PARTITION and/or CONFIG_ISO_PARTITION
If IDE or SCSI support is enabled (CONFIG_CMD_IDE or If IDE or SCSI support is enabled (CONFIG_CMD_IDE or
CONFIG_CMD_SCSI) you must configure support for at least CONFIG_CMD_SCSI) you must configure support for at
one partition type as well. least one partition type as well.
- IDE Reset method: - IDE Reset method:
CONFIG_IDE_RESET_ROUTINE - this is defined in several CONFIG_IDE_RESET_ROUTINE - this is defined in several
@ -1325,7 +1343,7 @@ The following options need to be configured:
This option specifies a list of I2C devices that will be skipped This option specifies a list of I2C devices that will be skipped
when the 'i2c probe' command is issued (or 'iprobe' using the legacy when the 'i2c probe' command is issued (or 'iprobe' using the legacy
command). If CONFIG_I2C_MULTI_BUS is set, specify a list of bus-device command). If CONFIG_I2C_MULTI_BUS is set, specify a list of bus-device
pairs. Otherwise, specify a 1D array of device addresses pairs. Otherwise, specify a 1D array of device addresses
e.g. e.g.
#undef CONFIG_I2C_MULTI_BUS #undef CONFIG_I2C_MULTI_BUS
@ -2324,22 +2342,24 @@ Low Level (hardware related) configuration options:
Overrides the default PCI memory map in cpu/mpc8260/pci.c if set. Overrides the default PCI memory map in cpu/mpc8260/pci.c if set.
- CONFIG_SPD_EEPROM - CONFIG_SPD_EEPROM
Get DDR timing information from an I2C EEPROM. Common with pluggable Get DDR timing information from an I2C EEPROM. Common
memory modules such as SODIMMs with pluggable memory modules such as SODIMMs
SPD_EEPROM_ADDRESS SPD_EEPROM_ADDRESS
I2C address of the SPD EEPROM I2C address of the SPD EEPROM
- CFG_SPD_BUS_NUM - CFG_SPD_BUS_NUM
If SPD EEPROM is on an I2C bus other than the first one, specify here. If SPD EEPROM is on an I2C bus other than the first
Note that the value must resolve to something your driver can deal with. one, specify here. Note that the value must resolve
to something your driver can deal with.
- CFG_83XX_DDR_USES_CS0 - CFG_83XX_DDR_USES_CS0
Only for 83xx systems. If specified, then DDR should be configured Only for 83xx systems. If specified, then DDR should
using CS0 and CS1 instead of CS2 and CS3. be configured using CS0 and CS1 instead of CS2 and CS3.
- CFG_83XX_DDR_USES_CS0 - CFG_83XX_DDR_USES_CS0
Only for 83xx systems. If specified, then DDR should be configured Only for 83xx systems. If specified, then DDR should
using CS0 and CS1 instead of CS2 and CS3. be configured using CS0 and CS1 instead of CS2 and CS3.
- CONFIG_ETHER_ON_FEC[12] - CONFIG_ETHER_ON_FEC[12]
Define to enable FEC[12] on a 8xx series processor. Define to enable FEC[12] on a 8xx series processor.
@ -2405,29 +2425,30 @@ Low Level (hardware related) configuration options:
Building the Software: Building the Software:
====================== ======================
Building U-Boot has been tested in native PPC environments (on a Building U-Boot has been tested in several native build environments
PowerBook G3 running LinuxPPC 2000) and in cross environments and in many different cross environments. Of course we cannot support
(running RedHat 6.x and 7.x Linux on x86, Solaris 2.6 on a SPARC, and all possibly existing versions of cross development tools in all
NetBSD 1.5 on x86). (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.
If you are not using a native PPC environment, it is assumed that you If you are not using a native environment, it is assumed that you
have the GNU cross compiling tools available in your path and named have GNU cross compiling tools available in your path. In this case,
with a prefix of "powerpc-linux-". If this is not the case, (e.g. if you must set the environment variable CROSS_COMPILE in your shell.
you are using Monta Vista's Hard Hat Linux CDK 1.2) you must change Note that no changes to the Makefile or any other source files are
the definition of CROSS_COMPILE in Makefile. For HHL on a 4xx CPU, necessary. For example using the ELDK on a 4xx CPU, please enter:
change it to:
CROSS_COMPILE = ppc_4xx- $ CROSS_COMPILE=ppc_4xx-
$ export CROSS_COMPILE
U-Boot is intended to be simple to build. After installing the
U-Boot is intended to be simple to build. After installing the sources you must configure U-Boot for one specific board type. This
sources you must configure U-Boot for one specific board type. This
is done by typing: is done by typing:
make NAME_config make NAME_config
where "NAME_config" is the name of one of the existing where "NAME_config" is the name of one of the existing configu-
configurations; see the main Makefile for supported names. rations; see the main Makefile for supported names.
Note: for some board special configuration names may exist; check if Note: for some board special configuration names may exist; check if
additional information is available from the board vendor; for additional information is available from the board vendor; for
@ -2503,20 +2524,20 @@ steps:
Testing of U-Boot Modifications, Ports to New Hardware, etc.: Testing of U-Boot Modifications, Ports to New Hardware, etc.:
============================================================== ==============================================================
If you have modified U-Boot sources (for instance added a new board If you have modified U-Boot sources (for instance added a new board
or support for new devices, a new CPU, etc.) you are expected to or support for new devices, a new CPU, etc.) you are expected to
provide feedback to the other developers. The feedback normally takes provide feedback to the other developers. The feedback normally takes
the form of a "patch", i. e. a context diff against a certain (latest the form of a "patch", i. e. a context diff against a certain (latest
official or latest in CVS) version of U-Boot sources. official or latest in the git repository) version of U-Boot sources.
But before you submit such a patch, please verify that your modifi- But before you submit such a patch, please verify that your modifi-
cation did not break existing code. At least make sure that *ALL* of cation did not break existing code. At least make sure that *ALL* of
the supported boards compile WITHOUT ANY compiler warnings. To do so, the supported boards compile WITHOUT ANY compiler warnings. To do so,
just run the "MAKEALL" script, which will configure and build U-Boot just run the "MAKEALL" script, which will configure and build U-Boot
for ALL supported system. Be warned, this will take a while. You can for ALL supported system. Be warned, this will take a while. You can
select which (cross) compiler to use by passing a `CROSS_COMPILE' select which (cross) compiler to use by passing a `CROSS_COMPILE'
environment variable to the script, i. e. to use the cross tools from environment variable to the script, i. e. to use the ELDK cross tools
MontaVista's Hard Hat Linux you can type you can type
CROSS_COMPILE=ppc_8xx- MAKEALL CROSS_COMPILE=ppc_8xx- MAKEALL
@ -2524,20 +2545,21 @@ or to build on a native PowerPC system you can type
CROSS_COMPILE=' ' MAKEALL CROSS_COMPILE=' ' MAKEALL
When using the MAKEALL script, the default behaviour is to build U-Boot When using the MAKEALL script, the default behaviour is to build
in the source directory. This location can be changed by setting the U-Boot in the source directory. This location can be changed by
BUILD_DIR environment variable. Also, for each target built, the MAKEALL setting the BUILD_DIR environment variable. Also, for each target
script saves two log files (<target>.ERR and <target>.MAKEALL) in the built, the MAKEALL script saves two log files (<target>.ERR and
<source dir>/LOG directory. This default location can be changed by <target>.MAKEALL) in the <source dir>/LOG directory. This default
setting the MAKEALL_LOGDIR environment variable. For example: location can be changed by setting the MAKEALL_LOGDIR environment
variable. For example:
export BUILD_DIR=/tmp/build export BUILD_DIR=/tmp/build
export MAKEALL_LOGDIR=/tmp/log export MAKEALL_LOGDIR=/tmp/log
CROSS_COMPILE=ppc_8xx- MAKEALL CROSS_COMPILE=ppc_8xx- MAKEALL
With the above settings build objects are saved in the /tmp/build, log With the above settings build objects are saved in the /tmp/build,
files are saved in the /tmp/log and the source tree remains clean during log files are saved in the /tmp/log and the source tree remains clean
the whole build process. during the whole build process.
See also "U-Boot Porting Guide" below. See also "U-Boot Porting Guide" below.
@ -3093,7 +3115,7 @@ TQM8xxL is in the first Flash bank):
You can check the success of the download using the 'iminfo' command; You can check the success of the download using the 'iminfo' command;
this includes a checksum verification so you can be sure no data this includes a checksum verification so you can be sure no data
corruption happened: corruption happened:
=> imi 40100000 => imi 40100000
@ -3438,7 +3460,7 @@ models provide on-chip memory (like the IMMR area on MPC8xx and
MPC826x processors), on others (parts of) the data cache can be MPC826x processors), on others (parts of) the data cache can be
locked as (mis-) used as memory, etc. locked as (mis-) used as memory, etc.
Chris Hallinan posted a good summary of these issues to the Chris Hallinan posted a good summary of these issues to the
u-boot-users mailing list: u-boot-users mailing list:
Subject: RE: [U-Boot-Users] RE: More On Memory Bank x (nothingness)? Subject: RE: [U-Boot-Users] RE: More On Memory Bank x (nothingness)?
@ -3728,6 +3750,8 @@ may be rejected, even when they contain important and valuable stuff.
Patches shall be sent to the u-boot-users mailing list. Patches shall be sent to the u-boot-users mailing list.
Please see http://www.denx.de/wiki/UBoot/Patches for details.
When you send a patch, please include the following information with When you send a patch, please include the following information with
it: it:
@ -3748,18 +3772,23 @@ it:
* If your patch adds new configuration options, don't forget to * If your patch adds new configuration options, don't forget to
document these in the README file. document these in the README file.
* The patch itself. If you are accessing the CVS repository use "cvs * The patch itself. If you are using git (which is *strongly*
update; cvs diff -puRN"; else, use "diff -purN OLD NEW". If your recommended) you can easily generate the patch using the
version of diff does not support these options, then get the latest "git-format-patch". If you then use "git-send-email" to send it to
version of GNU diff. the U-Boot mailing list, you will avoid most of the common problems
with some other mail clients.
The current directory when running this command shall be the top If you cannot use git, use "diff -purN OLD NEW". If your version of
level directory of the U-Boot source tree, or it's parent directory diff does not support these options, then get the latest version of
(i. e. please make sure that your patch includes sufficient GNU diff.
directory information for the affected files).
We accept patches as plain text, MIME attachments or as uuencoded The current directory when running this command shall be the parent
gzipped text. directory of the U-Boot source tree (i. e. please make sure that
your patch includes sufficient directory information for the
affected files).
We prefer patches as plain text. MIME attachments are discouraged,
and compressed attachments must not be used.
* If one logical set of modifications affects or creates several * If one logical set of modifications affects or creates several
files, all these changes shall be submitted in a SINGLE patch file. files, all these changes shall be submitted in a SINGLE patch file.
@ -3786,4 +3815,6 @@ Notes:
modification. modification.
* Remember that there is a size limit of 40 kB per message on the * Remember that there is a size limit of 40 kB per message on the
u-boot-users mailing list. Compression may help. u-boot-users mailing list. Bigger patches will be moderated. If
they are reasonable and not bigger than 100 kB, they will be
acknowledged. Even bigger patches should be avoided.