generic guideline to LinuxBoot for SoC platforms
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 25/100
- Tipo di issue
- Documentazione
- Chiarezza
- Da chiarire
- Stato di attività
- Ferma
- Stack tecnologico
- linux
- Ambito
- documentation, operating-systems
Direzione di ricerca
Inizia esaminando i componenti LinuxBoot proposti: userland, kernel, device tree, existing firmware e U-Boot Falcon mode con binman. Confronta il workflow oreboot indicato, incluso l’esempio Allwinner D1, con la guida Raspberry Pi collegata. Il lavoro sarà considerato completato quando sarà disponibile una guida generica documentata che tenga conto delle differenze tra le piattaforme e della semplicità di build e flash.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
TL;DR build systems and education are key
NOTE: There are many SoC vendors and platforms, and they all differ. A fully generic boot image is hard to achieve. We can go with a generic mainline kernel with a reduced set of drivers.
All you really need is
- a userland (u-root, BusyBox, whichever) as initrd/initramfa
- the kernel (with a suitable config)
- the device tree (the most specic part)
and a way to hook into the existing firmware unless you want to bring your own. The latter is way harder.
We need to look closer into U-Boot "Falcon" mode and its build system with binman. It must be easily possible to just replace the main U-Boot (commonly a FIT image today) with Linux (making that a FIT is trivial).
With oreboot, I am aiming to get to a single command line to build and flash an image. You pass your kernel with embedded initramfs and the DTB, and the oreboot build system does the rest. That already works for the Allwinner D1.
As an example, I find this to be a good guideline toward simplicity:
https://popovicu.com/posts/10-mb-raspberry-pi-mainline-linux-image-for-embedded/
- Lingua principale
- JavaScript
- Stelle
- 301
- Fork
- 53
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Preparare l'ambiente
Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di linuxboot/book
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
-
LinuxBoot for ChromeOSAperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 25/100
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 62/100
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 35/100
Tutte le issue di linuxboot/book
Issue simili
-
Link Checker ReportApertaautomated issue report
Difficoltà 2/5 1-3 ore Idoneità per principianti 62/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
I maintainer di solito rispondono entro 1 giorno
-
0. to triage bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
sindresorhus/eslint-plugin-unicorn#3825 ·
I maintainer di solito rispondono entro 1 giorno