2017-09-23 2 views
1

Ich versuche Kernel-Image in LEDE für Atmel at91 SAMA5D3-Plattformen zu erstellen, und der komprimierte Typ ist XZ. Sobald uImage erfolgreich ist, habe ich dieses Image auf meine SD-Karte übertragen und versucht, damit hochzufahren. Allerdings ist das Boot-up immer mit folgenden Meldung fehlgeschlagen:LEDE: Der uImage-Komprimierungstyp wird nicht unterstützt.

Booting uImage ... Der uImage Kompresse Typ nicht unterstützt SD/MMC: Fehler Bild

ich mit einigen anderen Bild versucht zu laden und das funktioniert gut also bin ich mir nicht sicher, ob es irgendeine Kernel-Konfiguration gibt, die ich auch aktivieren oder deaktivieren muss.

Könnte jemand dabei helfen? Vielen Dank!

Antwort

1

Die Nachricht scheint anzuzeigen, dass das Bootprogramm, das Sie zum Laden des Linux-Kernels verwenden, keine Dekomprimierungsfunktion besitzt.
Daher müssen Sie, anstatt zu erwarten, dass das Boot-Programm die Dekomprimierung durchführt, ein Kernel-Image erstellen, das sich selbst dekomprimiert, d. H. Ein zImage.
Wenn Sie darauf bestehen, können Sie zImage in einen uImage-Header einbinden, aber da das zImage selbstextrahierend ist, muss das Bild als "unkomprimiert" markiert werden.

Beachten Sie, dass der Dateityp uImage vom U-Boot-Dienstprogramm mkimage erstellt wird, und diese Art von Bild ist für U-Boot.
Andere Bootprogramme erkennen uU einen uImage möglicherweise nicht.
Boot-Programme für ARM sollen zImage unterstützen.

Ihr Beitrag ist sparsam in Bezug auf Details.
Wenn alles, was Sie wählen XZ anstelle des Standard-gzip für die Kernel compression mode in der Kernel-menuconfig tat, war, und tat einen zImage bauen, dann ist die mkimage wurde mit falschen Argumenten verwendet.
Ein zImage in einem uImage muss als "unkomprimiert" markiert sein.

+0

Danke @sawdust! Ich habe es, aber gibt es irgendeine Kernel-Konfiguration, um die uImage als 'unkomprimierten' Typ zu markieren? – user4826904

+0

* "Gibt es irgendeine Kernel-Konfiguration, um den uImage als 'unkomprimierten' Typ zu kennzeichnen?" * - Nein, weil die Kernel-Konfiguration angibt, wie der Kernel * gebaut werden soll und der ** mkimage ** -Befehl ausgeführt wird * nach * Der Kernel Image (und zImage) wurde erstellt. Studieren Sie die Seite ** man ** für den Befehl ** mkimage **. Die Art der verwendeten Komprimierung ist ein Argument für den Befehl ** mkimage **. ** Aber vielleicht stellst du die falsche Folgefrage. ** Weißt du genau, was für ein Kernel-Image du hast? – sawdust

+0

Danke. Ich habe ein uImage für mein Kernel-Image, die Fehlermeldung wurde angezeigt, nachdem die Magie verifiziert wurde. Also muss ich vielleicht herausfinden, wo 'mkimage' ausgeführt wird, und die Argumente überprüfen, oder? – user4826904

Verwandte Themen