U-Boot

From Crashcourse Wiki

Jump to: navigation, search

Contents

[edit] Overview

Both general content here, and links to board-specific content.

[edit] New pages/pages to write

[edit] Things to look into

  • bootcount limit
  • mender implementation
  • set-once env vars
  • generate FIT image from OE/YP

[edit] Internal links

Some of these pages need to be updated or deleted, or are works in progress:

[edit] Links

More coming shortly ...

[edit] Board-specific U-Boot pages

After you peruse this general content, you can visit the page specifically for your board; for now, just the one ...

[edit] Setting up your build environment

Assuming you installed a toolchain, then extend your working environment:

$ PATH=$PATH:...                     (path to toolchain executables)
$ export ARCH=<arch>                 (eg., "arm")
$ export CROSS_COMPILE=<prefix>      (eg., "arm-linux-gnueabihf-")

[edit] Getting U-Boot

The generic way:

$ git clone git://git.denx.de/u-boot.git
$ cd u-boot

My preference, which clones into a sub-directory named git so you can create a sibling build directory for all of the generated build output:

$ mkdir u-boot
$ cd u-boot
$ git clone git://git.denx.de/u-boot.git git
$ cd git

[edit] Configuring and building U-Boot

Assuming you've set up your build environment as above, configure and build in the sibling directory:

$ mkdir ../b                           (create your build directory)
$ make O=../b distclean                (just to be safe)
$ make O=../b <defconfig selection>
$ make O=../b                          (build)

Your build output should now be in ../b. At this point, you should consider going to one of the board-specific U-Boot pages to continue experimenting.

Personal tools