Das U-Boot

Das U-Boot
Developer(s)DENX Software Engineering
Initial releaseOctober 15, 1999; 25 years ago (1999-10-15)
Stable release
v2024.04 / April 2, 2024; 7 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:

Kontributor utama artikel ini tampaknya memiliki hubungan dekat dengan subjek. Artikel ini mungkin memerlukan perapian untuk mematuhi kebijakan konten Wikipedia, terutama dalam hal sudut pandang netral. Silakan dibahas lebih lanjut di halaman pembicaraan artikel ini. (Pelajari cara dan kapan saatnya untuk menghapus pesan templat ini)Artikel biografi ini ditulis menyerupai resume atau daftar riwayat hidup (Curriculum Vitae). Tolong bantu perbaiki agar netral dan ensiklopedis. Prof. Dr.M. ZaimM...

 

 

Dalam nama Spanyol ini, nama keluarganya adalah Chang. Franklin Chang DíazChang Díaz pada 1997Lahir5 April 1950 (umur 73)San José, Kosta RikaKebangsaanKosta Rika dan Amerika SerikatAlmamaterUniversitas Connecticut (BS, 1973)Massachusetts Institute of Technology (ScD, 1977)PekerjaanFisikawan, insinyur, wirausahawanKarier luar angkasaBotanis NASAWaktu di luar angkasa66 hari 18 jam 16 menitSeleksi1980 NASA GroupMisiSTS-61-C, STS-34, STS-46, STS-60, STS-75, STS-91, STS-111.Lambang misi Fr...

 

 

Ricefishes Oryzias woworae Klasifikasi ilmiah Kerajaan: Animalia Filum: Chordata Kelas: Actinopterygii Ordo: Beloniformes Famili: AdrianichthyidaeM. C. W. Weber, 1913 Subfamili & Genera Subfamili Adrianichthyinae Adrianichthys Subfamili Oryziinae Oryzias Adrianichthyidae (Inggris: ricefishcode: en is deprecated ) adalah famili ikan bersirip-duri kecil yang ditemukan di perairan tawar dan payau dari India sampai Jepang dan ke Kepulauan Indo-Australia, terutama Sulawesi. Nama umum dari kel...

For other uses, see Bootheel. PlaceMissouri BootheelLocation of the bootheel region centered on 36°15′N 89°51′W / 36.250°N 89.850°W / 36.250; -89.850Area[1] • Land1,708.45 sq mi (4,424.9 km2)Population (2019)[2] • Total62,012 • Density36.3/sq mi (14.0/km2) Topographic map of the bootheel and surrounding areas of Missouri and neighboring states. The Missouri Bootheel is a salient (protr...

 

 

Greg Abbott Gubernur Texas ke-48PetahanaMulai menjabat January 20, 2015WakilDan Patrick PendahuluRick PerryPenggantiPetahanaKetua Republican Governors AssociationPetahanaMulai menjabat 21 November 2019 PendahuluPete RickettsPenggantiPetahanaJaksa Agung Texas ke-50Masa jabatan2 Desember 2002 – 5 Januari 2015GubernurRick Perry PendahuluJohn CornynPenggantiKen PaxtonWakil Hakim Mahkamah Agung TexasMasa jabatan2 Januari 1996 – 6 Juni 2001[1] PendahuluJack Hig...

 

 

Small wild cat Geoffroy's cat Conservation status Least Concern  (IUCN 3.1)[1] CITES Appendix I (CITES)[1] Scientific classification Domain: Eukaryota Kingdom: Animalia Phylum: Chordata Class: Mammalia Order: Carnivora Suborder: Feliformia Family: Felidae Subfamily: Felinae Genus: Leopardus Species: L. geoffroyi Binomial name Leopardus geoffroyi(d'Orbigny & Gervais, 1844)[2] Distribution of Geoffroy's cat, 2015[1] Synonyms Oncifelis geoffroyi...

French architect Frontispiece of L’Expédition scientifique de Morée edited by Blouet Temple de Jupiter Panhellénien Guillaume-Abel Blouet (6 October 1795 – 7 May 1853) was a French architect who specialised in prison design. Biography Blouet was born at Passy. He won the Grand Prix de Rome in 1821 at the École des Beaux-Arts, entitling him to five years of study at the French Academy in Rome. The study of Roman architecture that was expected from students at the French Academy at Rome...

 

 

Dialect of Ancient Greek Pamphylian GreekRegionPamphyliaEraunknownLanguage familyIndo-European HellenicAncient GreekArcadocypriot Greek ?Pamphylian GreekLanguage codesISO 639-3–Linguist Listgrc-pamGlottologNone Pamphylian was a little-attested dialect of Ancient Greek that was spoken in Pamphylia, on the southern coast of Asia Minor. Its origins and relation to other Greek dialects are uncertain, though a number of scholars have proposed isoglosses with Arcadocypriot. It is the sole cl...

 

 

Artikel ini tidak memiliki referensi atau sumber tepercaya sehingga isinya tidak bisa dipastikan. Tolong bantu perbaiki artikel ini dengan menambahkan referensi yang layak. Tulisan tanpa sumber dapat dipertanyakan dan dihapus sewaktu-waktu.Cari sumber: Sungai Bug Barat – berita · surat kabar · buku · cendekiawan · JSTORSungai Bug di dekat Wyszków. Sungai Bug atau Sungai Buh, atau kadang disebut Bug Barat untuk membedakan dengan Sungai Bug di sela...

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: St. Mary's College, Sault Ste. Marie, Ontario – news · newspapers · books · scholar · JSTOR (December 2017) (Learn how and when to remove this message) Catholic high school in Sault Ste. Marie, Ontario, CanadaSt. Mary's CollegeAddress868 Second Line EastSault S...

 

 

سيمون جيرانس (بالإنجليزية: Simon Gerrans)‏  معلومات شخصية الميلاد 16 مايو 1980 (العمر 43 سنة)ملبورن الطول 1.70 م (5 قدم 7 بوصة) الجنسية  أستراليا الوزن 64 كـغ (141 رطل) الحياة العملية الدور دراج الفرق فريق إنيوس (2010–2011)أوريكا سكوت (2012–2017)أيه إل أم (1 سبتمبر 2004–31 ديسمبر 2004)أي...

 

 

Mountain in Israel Mount Gilboa, 2007 Scenery on Mount Gilboa Mount Gilboa (Hebrew: הַר הַגִּלְבֹּעַ, romanized: Har hagGīlbōaʿ‍; Arabic: جبل جلبوع Jabal Jalbūʿ or جبل فقوعة Jabal Fuqqāʿa), sometimes referred to as the Mountains of Gilboa, is the name for a mountain range in Israel. It overlooks the Harod Valley (the eastern part of the larger Jezreel Valley) to the north, and the Jordan Valley and Hills to the southeast to the west, respective...

أبو عبيد الله شمس الدين محمد بن سليمان الروداني الفاسي المكي معلومات شخصية الميلاد 1037هـ - 1628 متارودانت  الوفاة 1094هـ - 1683 مدمشق  مواطنة المغرب  اللقب الروداني المكي الحياة العملية العصر العثماني المنطقة المغرب المهنة عالم مسلم اللغة الأم الأمازيغية  اللغات الأما�...

 

 

Bambang Samoedro Informasi pribadiLahir19 Mei 1959 (umur 65)Purwokerto, Jawa TengahKebangsaanIndonesiaAlma materAkademi Angkatan Udara (1982)Karier militerPihak IndonesiaDinas/cabang TNI Angkatan UdaraMasa dinas1982–2017Pangkat Marsekal Muda TNISatuanKorps PenerbangPertempuran/perangOperasi SerojaPemberontakan di AcehKonflik PapuaSunting kotak info • L • B Marsekal Muda TNI (Purn.) Bambang Samoedro, S.Sos., M.M. (lahir 19 Mei 1959) adalah seorang Purnawirawan Pe...

 

 

This article is about the district in Kerala. For other uses, see Pathanamthitta (disambiguation). This article possibly contains original research. Please improve it by verifying the claims made and adding inline citations. Statements consisting only of original research should be removed. (June 2017) (Learn how and when to remove this message) District in Kerala, IndiaPathanamthitta districtDistrict Clockwise from top:Thiruvalla town, Aranmula Kottaram, Aranmula kannadi, 33 Kilovolt Substat...

Artikel ini bukan mengenai R.A. Kartini (film). KartiniSutradaraHanung BramantyoProduserRobert RonnySkenarioHanung BramantyoBagus BramantiCeritaHanung BramantyoRobert RonnyPemeranDian SastrowardoyoDeddy SutomoChristine HakimAcha SeptriasaAyushitaReza RahadianAdinia WirastiPenata musikAndi Rianto Charlie MelialaSinematograferFaozan RizalPenyuntingWawan I. WibowoPerusahaanproduksiLegacy PicturesScreenplay FilmsTanggal rilis19 April 2017Durasi122 menitNegaraIndonesiaBahasaBahasa IndonesiaB...

 

 

أييوس ييورييوس تقسيم إداري البلد اليونان  [1] إحداثيات 40°36′03″N 22°11′38″E / 40.60083333°N 22.19388889°E / 40.60083333; 22.19388889   السكان التعداد السكاني 1474 (resident population of Greece) (2021)1639 (resident population of Greece) (2001)1465 (resident population of Greece) (1991)1763 (resident population of Greece) (2011)  الرمز الجغرافي 736581  ...

 

 

United States Air Force general Craig A. FranklinThen-Lieutenant General Craig A. FranklinAllegianceUnited StatesService/branchUnited States Air ForceYears of service1981–2014RankLieutenant General(Retired as Major General)Commands heldThird Air Force53rd Wing31st Fighter Wing332nd Air Expeditionary WingBattles/warsIraq WarAwardsAir Force Distinguished Service MedalDefense Superior Service Medal (2)Legion of Merit (2)Bronze Star Medal (2) Craig A. Franklin is a former United States Air...

朗纳·弗里施Ragnar Frisch朗纳·弗里施出生1895年3月3日挪威奥斯陆逝世1973年1月31日(1973歲—01—31)(77歲)挪威奥斯陆国籍挪威母校奥斯陆大学知名于计量经济学生产理论奖项诺贝尔经济学奖(1969年)科学生涯研究领域经济学机构奥斯陆大学 朗纳·安东·基蒂尔·弗里施(挪威語:Ragnar Anton Kittil Frisch,1895年3月3日—1973年1月31日),挪威经济学家,1969年诺贝尔经济学奖获得者。&#...

 

 

Voce principale: Gela. La storia di Gela ha inizio nel V millennio a.C., quando da piccolo abitato della prima fase dell'età Eneolitica finì per trasformarsi, in età storica, in una delle più importanti colonie greche della Sicilia. Personaggi della storia di Gela. È un acquarello realizzato intorno al 1990 dal pittore gelese Antonio Occhipinti, custodito nella pinacoteca del comune. Tra i personaggi raffigurati vediamo Salvatore Aldisio, Federico II di Svevia, Eschilo, Gelone, Antifemo...