Das U-Boot

From Wikipedia, the free encyclopedia
Jump to: navigation, search
This article is about the boot loader. For other uses, see Das Boot (disambiguation).
"Uboot" redirects here. For other uses, see U-boat (disambiguation).
Das U-Boot
Developer(s) DENX Software Engineering
Initial release October 15, 1999 (1999-10-15)
Stable release v2013.07 / July 22, 2013; 11 months ago (2013-07-22)
Development status active
Written in C
Available in English
Type Boot loader
License GNU GPLv2 and GNU GPLv2+
Website http://www.denx.de/wiki/U-Boot/

Das U-Boot (Universal Bootloader) is an open source, primary boot loader used in embedded devices. It is available for a number of different computer architectures, including 68k, ARM, AVR32, Blackfin, MicroBlaze, MIPS, Nios, PPC and x86.

Functionality[edit]

Supported file systems[edit]

Device tree[edit]

Main article: Device tree

Device tree is a data structure for describing hardware layout. Using Device tree, a vendor might be able to use an unmodified mainline Das U-Boot on otherwise special purpose hardware. As also adopted by the Linux kernel, Device tree is intended to ameliorate the situation in the embedded industry, where a vast number of product specific forks (of Das U-Boot and Linux) exist. The ability to run mainline software practically gives customers indemnity against lack of vendor updates.

History[edit]

U-Boot on the Openmoko Freerunner
U-Boot on the XPedite5501

The project's origin is a 8xx PowerPC bootloader called 8xxROM written by Magnus Damm.[1] In October 1999 Wolfgang Denk moved the project to SourceForge.net and renamed it to PPCBoot, because SF.net did not allow project names starting with digits.[1] Version 0.4.1 of PPCBoot was first publicly released July 19, 2000.

In 2002 a previous version of the source code was briefly forked into a product called ARMBoot, but was merged back into the PPCBoot project shortly thereafter. On October 31 2002 PPCBoot−2.0.0 was released. This marked the last release under the PPCBoot name, as it was renamed to reflect its support of other architectures in addition to the PPC ISA.[2][3]

PPCBoot−2.0.0 became U−Boot−0.1.0 in November 2002, with support added for x86 processor architecture. Additional architecture support was added in the following months: MIPS32 in March 2003, MIPS64 in April, Altera NIOS−32 in October, Coldfire in December, and Microblaze in April 2004. The May 2004 release of U-Boot-1.1.2 included support for 216 different board manufacturers across the various architectures.[3]

The current name Das U-Boot adds a German definite article, to create a bilingual pun on the German word for "submarine." It is free software released under the terms of the GNU General Public License. It can be built on an x86 PC for any supported architecture using a cross development GNU toolchain, for example crosstool, the Embedded Linux Development Kit (ELDK) or OSELAS.Toolchain.

The importance of Das U-Boot in embedded Linux systems is quite succinctly stated in the book Building Embedded Linux Systems, by Karim Yaghmour, whose text about U-Boot begins, "Though there are quite a few other bootloaders, 'Das U-Boot,' the universal bootloader, is arguably the richest, most flexible, and most actively developed open source bootloader available."[4]

Usages[edit]

SAM440ep and SAM460ex by Acube AmigaOS board use UBoot. Also A-EON AmigaOnex1000 successor system, X5000 will also use Uboot.

The ARM-based Chromebooks ship with Das U-Boot. The Celeron- and i5-based Chromebooks use it as payload for coreboot.[5]

See also[edit]

References[edit]

External links[edit]