Setting up U-Boot

From Linux/Xtensa
Revision as of 03:11, 28 August 2009 by Piet (talk | contribs) (New page: == U-Boot == [http://www.denx.de/wiki/UBoot U-Boot] is another popular boot loader. A preliminary port to the Xtensa architecture is now available. See [http://git.linux-xtensa.org/cgi-...)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

U-Boot

U-Boot is another popular boot loader. A preliminary port to the Xtensa architecture is now available. See U-Boot Sources (GIT Summary). Or, to access this tree using git directly, use something like:

git clone git://git.linux-xtensa.org/git/u-boot/u-boot-xtensa.git u-boot

(Note: This path is subject to change.)

Before you can build U-Boot you must have built the toolchain for XTensa core. Set your PATH to point to the toolchain built using buildroot.

  $ export PATH="<workdir>/buildroot/build_xtensa_<cname>/staging_dir/usr/bin:$PATH"

where <cname> is the name of the Xtensa core variant you wish to build for (e.g., dc232b).

To build U-Boot, first clone the tree as above, change to the top level of the tree, then configure it for your board and Xtensa core variant as follows:

make <cname>_<board>_config

This should only take a few seconds. For example, to build U-boot for the 'xtav60' board and 'dc232b' core:

make dc232b_xtav60_config

Only boards and core variants currently supported in the tree can be built out of the box. Headers for supported cores can be found in the tree under include/asm-xtensa/variant-<cname>. The core specific headers are described in the doc/README.xtensa file. To support a new core, these headers must be copied from the overlay in the same way as for the linux kernel.

After the configuration step, to actually build U-Boot, simply:

make all

This will take a few minutes.

Further details on U-Boot in general are in the generic README at the top of the U-Boot tree. Details specific to the Xtensa architecture are in doc/README.xtensa. Details specific to a board are in board[/<family>]/<board>/README (for example board/avnet/xtav60/README).