2016-05-04 28 views
1

Ich habe u-boot vielseitig pb Konfigurationsdatei hinzugefügt befindet include/configs/versatile.h diese Zeilen:Wie Kernel von FAT-Partition in u-boot unter Qemu laden (Arm vielseitig pb)

#define CONFIG_CMD_FAT 
#define CONFIG_DOS_PARTITION   1 

Fatload-Befehl zu U-Boot hinzufügen. Also habe ich den Fatload-Befehl unterstützt. Und ich fange an u-boot auf diese Weise:

qemu-system-arm -M versatilepb -m 128M -nographic -kernel u-boot 

Jetzt Frage ist, wie man Qemu-Datei zu übergeben, das Fett-Dateisystem mit Kernel (Ich bin interessiert an Booten FreeBSD-Kernel könnte, aber ich denke, zB mit dem Laden Linux enthält hilf mir auch) und lade dann den Kernel und starte ihn unter U-Boot.

Antwort

3

Also, das Problem hier ist, dass die vielseitige Pb SD/MMC-Karten in U-Boot nicht unterstützt, so dass Sie nicht wirklich. Wenn Sie jedoch diese auf einem anderen Gerät tun wollte, die SD/MMC (wie die vexpress-a9) unterstützt Sie tun würde:

$ dd if=/dev/zero of=sd.bin bs=1k count=$((64 * 1024)) 
$ fdisk ./sd.bin 
... create a partition 

lesen Dann loopback mounting individual partitions from within a file that contains a partition table on linux, wie zu verwenden losetup zu, dass Partition zur Verfügung zu stellen, das Format es und dann mounten und kopieren Daten wie es war eine echte SD-Karte. Dann:

$ qemu-system-arm -M vexpress-a9 -kernel vexpress_ca9x4/u-boot -nographic -sd sd.bin 

Und jetzt der 'mmc' Befehl wird mit dieser sd.bin Datei arbeiten.