Share to: share facebook share twitter share wa share telegram print page

Das U-Boot

Das U-Boot
Developer(s)DENX Software Engineering
Initial releaseOctober 15, 1999; 24 years ago (1999-10-15)
Stable release
v2024.04 / April 2, 2024; 5 months ago (2024-04-02)[1]
Repository
Written inC, Assembly
Available inEnglish
TypeBoot loader
LicenseGPL-2.0-or-later[2]
Websitedocs.u-boot.org/en/latest/ Edit this on Wikidata

Das U-Boot (subtitled "the Universal Boot Loader" and often shortened to U-Boot; see History for more about the name) is an open-source boot loader used in embedded devices to perform various low-level hardware initialization tasks and boot the device's operating system kernel. It is available for a number of computer architectures, including M68000, ARM, Blackfin, MicroBlaze, AArch64, MIPS, Nios II, SuperH, PPC, RISC-V and x86.

Functionality

U-Boot is both a first-stage and second-stage bootloader. It is loaded by the system's ROM (e.g. on-chip ROM of an ARM CPU) from a supported boot device, such as an SD card, SATA drive, NOR flash (e.g. using SPI or I²C), or NAND flash. If there are size constraints, U-Boot may be split into two stages: the platform would load a small SPL (Secondary Program Loader), which is a stripped-down version of U-Boot, and the SPL would do some initial hardware configuration (e.g. DRAM initialization using CPU cache as RAM) and load the larger, fully featured version of U-Boot.[3][4][5] Regardless of whether the SPL is used, U-Boot performs both first-stage (e.g., configuring memory controller and SDRAM) and second-stage booting (e.g., configuring mainboard and other I/O devices, loading device tree and loading OS kernel from storage device).

U-Boot implements a subset of the UEFI specification as defined in the Embedded Base Boot Requirements (EBBR) specification.[6] UEFI binaries like GRUB or the Linux kernel can be booted via the boot manager or from the command-line interface.

U-Boot runs a command-line interface on a console or a serial port. Using the CLI, users can load and boot a kernel, possibly changing parameters from the default. There are also commands to read device information, read and write flash memory, download files (kernels, boot images, etc.) from the serial port or network, manipulate device trees, and work with environment variables (which can be written to persistent storage, and are used to control U-Boot behavior such as the default boot command and timeout before auto-booting, as well as hardware data such as the Ethernet MAC address).

Unlike PC bootloaders which obscure or automatically choose the memory locations of the kernel and other boot data, U-Boot requires its boot commands to explicitly specify the physical memory addresses as destinations for copying data (kernel, ramdisk, device tree, etc.) and for jumping to the kernel and as arguments for the kernel. Because U-Boot's commands are fairly low-level, it takes several steps to boot a kernel, but this also makes U-Boot more flexible than other bootloaders, since the same commands can be used for more general tasks. It's even possible to upgrade U-Boot using U-Boot, simply by reading the new bootloader from somewhere (local storage, or from the serial port or network) into memory, and writing that data to persistent storage where the bootloader belongs.

U-Boot has support for USB, so it can use a USB keyboard to operate the console (in addition to input from the serial port), and it can access and boot from USB Mass Storage devices such as SD card readers.

Data storage and boot sources

U-Boot boots an operating system by reading the kernel and any other required data (e.g. device tree or ramdisk image) into memory, and then executing the kernel with the appropriate arguments.

U-Boot's commands are actually generalized commands which can be used to read or write any arbitrary data. Using these commands, data can be read from or written to any storage system that U-Boot supports, which include:

(Note: These are boot sources from which U-Boot is capable of loading data (e.g. a kernel or ramdisk image) into memory. U-Boot itself must be booted by the platform, and that must be done from a device that the platform's ROM is capable of booting from, which naturally depends on the platform.)

  • Onboard or attached storage
    • SD card
    • SATA
    • SCSI
    • I²C (e.g. EEPROMs or NOR flash)
    • SPI (e.g. NOR or NAND flash)
    • ONFI (raw NAND flash)
    • eMMC (managed NOR or NAND flash)
    • eUFS (managed NAND flash)
    • NVMe
    • USB mass storage device
  • Serial port (file transfer)
  • Network boot (optionally using DHCP, BOOTP, or RARP)

On some embedded device implementations, the CPU or SoC will locate and load the bootloader (such as Das U-Boot) from the boot partition (such as ext4 or FAT filesystems) directly.

Compatible file systems

U-Boot does not need to be able to read a filesystem in order for the kernel to use it as a root filesystem or initial ramdisk; U-Boot simply provides an appropriate parameter to the kernel, and/or copies the data to memory without understanding its contents.

However, U-Boot can also read from (and in some cases, write to) filesystems. This way, rather than requiring the data that U-Boot will load to be stored at a fixed location on the storage device, U-Boot can read the filesystem to search for and load the kernel, device tree, etc., by pathname.

U-Boot includes support for these filesystems:

Device tree

Device tree is a data structure for describing hardware layout. Using Device tree, a vendor might be able to use a less modified mainline 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 U-Boot and Linux) exist. The ability to run mainline software practically gives customers indemnity against lack of vendor updates.

History

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

The project started as a 8xx PowerPC bootloader called 8xxROM written by Magnus Damm.[7] 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.[7] 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 ability to work on other architectures besides the PPC ISA.[8][9]

PPCBoot−2.0.0 became U−Boot−0.1.0 in November 2002, expanded to work on the x86 processor architecture. Additional architecture capabilities were added in the following months: MIPS32 in March 2003, MIPS64 in April, Nios II in October, ColdFire in December, and MicroBlaze in April 2004. The May 2004 release of U-Boot-1.1.2 worked on the products of 216 board manufacturers across the various architectures.[9]

The current name Das U-Boot adds a German definite article, to create a bilingual pun on the classic 1981 German submarine film Das Boot, which takes place on a World War II German U-boat. It is free software released under the terms of the GNU General Public License. It can be built on an x86 PC for any of its intended architectures using a cross development GNU toolchain, for example crosstool, the Embedded Linux Development Kit (ELDK) or OSELAS.Toolchain.

The importance of 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."[10]

Usages

See also

Notes

  1. ^ This is true NFS boot (U-Boot itself uses NFS to load the kernel), as opposed to loading a kernel from the network using TFTP and specifying that the kernel should use an NFS mount as its root filesystem.

References

  1. ^ Rini, Tom (2 April 2024). "U-Boot v2024.04 released". u-boot (Mailing list). Retrieved 2 April 2024.
  2. ^ "Das U-Boot's licence". git.denx.de. 2013. Retrieved 2018-10-13.
  3. ^ "Preparing a Uboot image for Altera's Cyclone V SoC FPGA".
  4. ^ "U-Boot on i.MX6". 18 June 2013.
  5. ^ "Bootloaders:u-boot:features [Analog Devices Open Source| Mixed-signal and Digital Signal Processing ICs]". Archived from the original on 2017-09-05. Retrieved 2016-06-15.
  6. ^ https://github.com/arm-software/ebbr, Embedded Base Boot Requirements (EBBR) specification, retrieved 2021-03-25
  7. ^ a b PPCBoot Homepage: Authors
  8. ^ "[PPCBoot-users] Halloween release of PPCBoot: 2.0.0 - the Final Release.", Wolfgang Denk, 31 October 2002
  9. ^ a b "U-Bootdoc History". Retrieved September 4, 2011.
  10. ^ Building Embedded Linux Systems by Kareem Yaghmour, Chapter 9
  11. ^ coreboot tutorial oscon 2013, p. 6
  12. ^ We are the SpaceX software team, ask us anything!, reply 4
  13. ^ "U Boot · AsahiLinux/docs Wiki". GitHub. Retrieved 2022-04-29.

Read other articles:

Pamela GhaniyaPamela di GF Idola Cilik 2022LahirLatifa Pamela Ghaniya26 April 2010 (umur 13)Bukittinggi, Sumatera Barat, IndonesiaKebangsaanIndonesiaNama lain Pamela Ghaniya PekerjaanPenyanyiAktrisPresenterTahun aktif2022 – sekarangDikenal atasIdola Cilik (Musim keenam)Karier musikGenre Pop Instrumen Vokal Label Hits Records (2022 – sekarang) Star Media Nusantara (2022 – sekarang) Artis terkaitPutu Maydea Latifa Pamela Ghaniya (lahir 26 April 2010) dikenal juga sebagai Pa...

يو إف سي على فوكس: دوس سانتوس ضد ميوتيتش الجهة المنظمة بطولة القتال النهائي  الرياضة فنون القتال المختلطة  البلد الولايات المتحدة  المقاتل النهائي: نهائي البطل الذي سيتم تتويجه    تعديل مصدري - تعديل   يو إف سي على فوكس: دوس سانتوس ضد ميوتيتش (بالإنجليزية: UFC on Fo...

Manuel Matamoros García Información personalNacimiento 8 de abril de 1834Lepe, HuelvaFallecimiento 31 de julio de 1866Lausana, SuizaNacionalidad EspañolaReligión ProtestantismoFamiliaPadres Dolores García TrigoEducaciónEducación Militar[editar datos en Wikidata] Manuel Matamoros García (Lepe, Huelva, 8 de abril de 1834 - Lausana, Suiza, 31 de julio de 1866) fue un militar y religioso español. Biografía Aunque nació en Lepe, Huelva, vivió gran parte de su vida en Málaga....

Bóng đá tại Đại hội Thể thao châu Á 2010Địa điểmSân vận động Hoa ĐôSân vận động Anh ĐôngSân vận động Nhân dân Quảng ĐôngTrung tâm Thể thao Hoàng BộSân vận động Việt Tú SơnSân vận động Thiên HàSân vận động Đại học Thành phố Quảng ChâuNgày7–25 tháng 11Vận động viên602 từ 24 quốc gia← 20062014 → Bóng đá tại Đại hội Thể thao châu Á 2010 được t

Malí en los Juegos Olímpicos Bandera de MalíCódigo COI MLICON Comité Nacional Olímpico y Deportivo de MalíJuegos Olímpicos de Barcelona 1992Deportistas 5 en 2 deportesMedallas 0 0 0 0 Historia olímpicaJuegos de verano 1964 • 1968 • 1972 • 1976 • 1980 • 1984 • 1988 • 1992 • 1996 • 2000 • 2004 • 2008 • 2012 • 2016 • 2020 ...

Alana EvansEvans, 2019LahirDawn Vanguard[1][2]6 Juli 1976 (umur 47)Fort Campbell, Kentucky, A.S.[3]Nama lainAlana[4]Jenna TaliaSuperpinkninja[5]Tinggi5 ft 5 in (1,65 m)Suami/istriChris Evans ​(m. 1999)​[6]Situs webalanaevans.com Alana Evans pada tahun 2013. Alana Evans (lahir 6 Juli 1976) adalah seorang aktris pornografi asal Amerika Serikat. Kadang-kadang ia dikenal dengan nama Jenna Talia ...

  Pericallis × hybrida TaxonomíaReino: PlantaeSubreino: TracheobiontaDivisión: MagnoliophytaClase: MagnoliopsidaSubclase: AsteridaeOrden: AsteralesFamilia: AsteraceaeSubfamilia: AsteroideaeTribu: SenecioneaeGénero: PericallisEspecie: Pericallis x(Willd.) B.Nord.[editar datos en Wikidata] Pericallis × hybrida es una planta de la división Magnoliophyta encuadrada en la familia de Asteraceae. Se originó por hibridación de Pericallis cruenta con Pericallis lanata, ambas nat...

Tourism and immigration advertising agency in Singapore This article has multiple issues. Please help improve it or discuss these issues on the talk page. (Learn how and when to remove these template messages) This article relies excessively on references to primary sources. Please improve this article by adding secondary or tertiary sources. Find sources: Contact Singapore – news · newspapers · books · scholar · JSTOR (September 2009) (Learn how and w...

Mountain on Sendai, Miyagi, Japan You can help expand this article with text translated from the corresponding article in Japanese. (March 2023) Click [show] for important translation instructions. View a machine-translated version of the Japanese article. Machine translation, like DeepL or Google Translate, is a useful starting point for translations, but translators must revise errors as necessary and confirm that the translation is accurate, rather than simply copy-pasting machine-tra...

Andreas Achenbach, from Die Katholische Welt (1896) Andreas Achenbach (29 September 1815 – 1 April 1910) adalah seorang pelukis lanskap dan pemandangan laut Jerman dengan gaya Romantis. Ia dianggap sebagai salah satu pendiri Düsseldorf School.[butuh rujukan] Saudaranya, Oswald, juga seorang pelukis lanskap terkenal. Bersama-sama, berdasarkan inisial mereka, mereka dikenal sebagai Alpha dan Omega dari pelukis lanskap.[butuh rujukan][1][2] Lukisa...

African-American actor and activist (1860-1941) Henrietta DavisBornHenrietta Vinton Davis(1860-08-25)August 25, 1860Baltimore, Maryland, United StatesDiedNovember 23, 1941(1941-11-23) (aged 81)Washington, D.C., United StatesOccupation(s)Actress, elocutionist, dramatic reader, playwright, International Organizer of the UNIA, Vice President Black Star LineSpouseThomas T. Symmons Henrietta Vinton Davis (August 25, 1860 – November 23, 1941) was an elocutionist, dramatist, and impersonator....

Universal Studios theme park in Singapore Universal Studios SingaporeUniversal Studios Singapore entranceLocationResorts World, Sentosa, SingaporeCoordinates1°15′14″N 103°49′26″E / 1.254°N 103.824°E / 1.254; 103.824StatusOperatingOpened18 March 2010; 13 years ago (2010-03-18) (soft opening)28 May 2011; 12 years ago (2011-05-28) (grand opening)OwnerGenting Singapore (under a license from NBCUniversal)Operated byGenting Sin...

Dari Negeri Poci Informasi SkalaNasional Pendiri/penggagasLihat daftar Berdiri1993 PenyelenggaraYayasan DNP Jenis acaraFestival sastra tematik Rute/lokasiKota Tegal PesertaPenyair Indonesia dan mancanegara Website Dari Negeri Poci adalah sebuah serial buku antologi puisi yang mencoba merekam jejak kepenyairan para penyair Indonesia dari tahun ke tahun secara lintas generasi, lintas gender dan lintas genre. Buku yang mulai terbit mulai tahun 1993 ini pada tahun 2017 sudah mencapai seri ke-7. A...

Liga Pro BelgiaNegaraBelgiaKonfederasiUEFADibentuk1895; 127 tahun lalu (1895)Jumlah tim16Tingkat pada piramida1Degradasi keChallenger Pro LeaguePiala domestikPiala Belgia Piala Super BelgiaPiala internasionalUEFA Champions LeagueUEFA Europa LeagueUEFA Europa Conference LeagueJuara bertahan ligaRoyal Antwerp (gelar ke- 5) (2022–23)Klub tersuksesAnderlecht (34 gelar)Televisi penyiarDaftar penyiarSitus webproleague.be (dalam bahasa Belanda) Liga Pro Belgia 2022–23 Liga Pro Bel...

1943 American comic book series Headline Comics (for The American Boy)Cover art for Headline Comics #1 (December 1942), artist unknown.Publication informationPublisherPrize ComicsScheduleIrregularFormatStandard Golden AgeGenreSuperhero/adventure (issues #1-22)Crime (issues #23–77)Publication dateFebruary 1943 - September-October 1956No. of issues77 Headline Comics (For The American Boy) was an American comics magazine published by Prize Comics (under the indicia titles American Boys' Comics...

A Teletech BPO site in Cainta, Rizal Call centers began in the Philippines as providers of email response and managing services then broadened to industrial capabilities for almost all types of customer relations, ranging from travel services, technical support, education, customer care, financial services, online business-to-customer support, and online business-to-business support. The call center industry is one of the fastest growing in the country. The Philippines is also considered a lo...

Thandie Newton Thandiwe Adjewa Thandie Newton (lahir 6 November 1972) merupakan seorang aktris berkebangsaan Inggris yang memenangkan nominasi BAFTA dan SAG Award. Dia dilahirkan di London. Dia berkarier di dunia film sejak tahun 1991. Filmografi Tahun Film Karakter 1991 Flirting Thandiwe Adjewa Pirate Prince Becky Newton 1993 The Young Americans Rachael Stevens 1994 Loaded Zita Interview with the Vampire: The Vampire Chronicles Yvette 1995 Jefferson in Paris Sally Hemings The Journey of Augu...

This article needs additional citations for verification. Please help improve this article by adding citations to reliable sources. Unsourced material may be challenged and removed.Find sources: Planet Roll Call – news · newspapers · books · scholar · JSTOR (April 2019) (Learn how and when to remove this template message) 2009 studio album by Susumu HirasawaPlanet Roll CallStudio album by Susumu HirasawaReleasedFebruary 18, 2009RecordedSeptembe...

This article uses bare URLs, which are uninformative and vulnerable to link rot. Please consider converting them to full citations to ensure the article remains verifiable and maintains a consistent citation style. Several templates and tools are available to assist in formatting, such as reFill (documentation) and Citation bot (documentation). (August 2022) (Learn how and when to remove this template message) Village in Tamil Nadu, IndiaKayamozhi KayamoliVillageKayamozhiLocation in Tamil Nad...

1974 single by the Beach BoysChild of Winter (Christmas Song)Single by the Beach BoysB-sideSusie CincinnatiReleasedDecember 23, 1974RecordedNovember 18, 1974GenreChristmasLength2:50LabelBrother/Reprise (1321)Songwriter(s)Brian Wilson, Steve KalinichProducer(s)Brian WilsonThe Beach Boys singles chronology California Saga: California (1973) Child of Winter (Christmas Song) (1974) Sail On, Sailor (1975) Child of Winter (Christmas Song) is a song by American rock band the Beach Boys that was rele...

Kembali kehalaman sebelumnya