2017-08-04 4 views
0

Ich arbeite an yocto-Projekt, um Bilder für BBB.I geklont das Projekt git clone -b pyro git://git.yoctoproject.org/poky dann initiiert den Build-Prozess. Gebacken mit bitbake core-image-sato und bekam das Build-Verzeichnis mit Dateien.Beaglebone Black bootet nicht mit dem yocto-Bild

Ich habe 2 Partitionen auf SD-Karte mit 64M für Root und Rest (15 + GB) zum Booten erstellt. Kopiert MLO and u-boot-beaglebone.img zu root partition.

Untared die core-image-sato-beaglebone.tar.bz2 auf Root-Partition und dann zImage-beaglebone.bin, zImage-am335x-bone.dtb, zImage-am335x-boneblack.dtb unter Boot-Partition kopiert.

Als ich versucht habe, BBB zu booten gefunden, dass U-Boot erwartet uEnv.txt und stecken bleiben dort. Das YoCto-Build-Verzeichnis hat keine uEnv.txt, also wie man eigene uEnv.txt schreibt? Dies ist die U-Boot-Eingabeaufforderung. Hit any key to stop autoboot: 0 gpio: pin 53 (gpio 53) value is 1 mmc0 is current device micro SD card found mmc0 is current device gpio: pin 54 (gpio 54) value is 1 SD/MMC found on device 0 reading uEnv.txt ** Unable to read file uEnv.txt ** gpio: pin 55 (gpio 55) value is 1 ** File not found /boot/uImage ** U-Boot# Ich habe uEnv.txt in Root-Partition mit Text als mmcdev=0 mmcpart=1 bootpart=0:1 Diesmal u-boot ein uImage von /boot Verzeichnis zu lesen versucht, aber ich habe zImage was diesen Konflikt jetzt? Wie soll ich es lösen?

SD/MMC found on device 0 reading uEnv.txt 32 bytes read in 4 ms (7.8 KiB/s) Loaded environment from uEnv.txt Importing environment from mmc ... gpio: pin 55 (gpio 55) value is 1 reading /boot/uImage ** Unable to read file /boot/uImage ** U-Boot#

+0

https://unix.stackexchange.com/questions/122526/how-to-convert-a-zimage -into-uimage-for-boot-mit-u-boot – h0ch5tr4355

+0

@ h0ch5tr4355 also Sie sagen, es ist zwingend erforderlich, um zImage in uImage und u-Boot kann zImages nicht laden? Und was ist mit 'zImage-am335x-boneblack.dtb, zImage-am335x-bone.dtb, zImage-beaglebone.bin' muss ich sie auch konvertieren? – user7345878

+0

Ich folgte dem im obigen Link genannten Schritt. Dieses Mal u-Boot geht in eine Endlosschleife, während die uImage Lesen 'Daten abbrechen pc: [<9f376478>] vl: [<9f35a494>] sp: 9f238060 ip: 9f238090 fp: 00000da1 r10: 00000080 r9: 00000200 r8: 9f238f40 r7 : 00000000 r6: 00564a00 r5: 00000020 r4: 48060100 r3: 00000000 r2: 56190527 r1: 00000da2 r0: 00000001 Flags: Nzcv IRQs off FIQs auf Modus SVC_32 Zurücksetzen CPU ... Zurücksetzen ... ' – user7345878

Antwort

1

Es scheint, dass U-Boot nicht in der Lage ist, die uEnv.txt Datei zu finden. Probieren Sie diese Konfigurationen aus. Möglicherweise müssen Sie einen Teil der Konfiguration basierend auf Ihrer Umgebung ändern.

sudo vim uEnv.txt

kernel_file=zImage 
bootdir=/boot 
mmcdev=0 
mmcpart=2 
loadzimage=load mmc ${mmcdev}:${mmcpart} ${loadaddr} ${bootdir}/${kernel_file} 
loadfdt=load mmc ${mmcdev}:${mmcpart} ${fdtaddr} ${bootdir}/${fdtfile} 
console=ttyO0,115200n8 
mmcroot=/dev/mmcblk0p2 ro 
mmcrootfstype=ext4 rootwait fixrtc 
mmcargs=setenv bootargs console=${console} root=${mmcroot} rootfstype=${mmcrootfstype} ${optargs} 
uenvcmd=run loadzimage; run loadfdt; run mmcargs; bootz ${loadaddr} - ${fdtaddr} 

Copy zImage und dtb auf der Startpartition:

sudo cp -v /<path_to_kernel>/arch/arm/boot/zImage <path_to_boot>/boot/ 
sudo cp -v /<path_to_kernel>/arch/arm/boot/dts/am335x-boneblack.dtb <path_to_boot>/boot/ 
+0

Kein Glück, dass ich diese geladene Umgebung von uEnv.txt Import-Umgebung von mmc ... Running uenvcmd ... lesen/boot/zImage ** Kann nicht lesen Datei/boot/zImage ** lesen /boot/am335x-boneblack.dtb ** Kann Datei /boot/am335x-boneblack.dtb nicht lesen ** Schlechte Linux ARM zImage Magie! gpio: Stift 55 (GPIO 55) Wert 1 ** Datei nicht gefunden/boot/uImage ** U-Boot # ' – user7345878

+0

Überprüfen Sie, ob Ihre zImage liegt an/boot/zImage oder nicht ... Wenn die Der Pfad, in dem zImage vorhanden ist, ist nicht/boot. Aktualisieren Sie dann die Variable "bootdir" in uEnv.txt mit dem zImage-Pfad. –

+0

Sein dort unter/boot-Verzeichnis.In der Boot-Partition habe ich 'MLO, uEnv.txt und u-boot.img' und in der Root-Partition unter/boot Verzeichnis habe ich' am335x-boneblack.dtb, am335x-bone.dtb und zImage' – user7345878

Verwandte Themen