Re: [poky] runqemu on genericarm64: "u-boot.bin not found" error
Michael Opdenacker <[email protected]>
| Newsgroups | org.yoctoproject.lists.poky |
|---|---|
| Organization | Root Commit |
| Message-ID | <[email protected]> |
Hi Ross, Thanks for these details! On 1/27/25 12:47, Ross Burton wrote: > On 27 Jan 2025, at 11:27, Michael Opdenacker via lists.yoctoproject.org <[email protected]> wrote: >> Ross, all, >> >> Probably not a surprise for some of you, but I figured it's good to report this somewhere: >> >> I generated an image for the "genericarm64" machine, and when trying to use the "runqemu" command, I get this error: >> >> $ runqemu nographic slirp >> runqemu - INFO - Running bitbake -e ... >> runqemu - ERROR - BIOS /home/mike/work/yocto/master/poky/build-genericarm64/tmp/deploy/images/genericarm64/u-boot.bin not found >> runqemu - INFO - Cleaning up >> runqemu - INFO - Host uptime: 670446.07 >> >> That's not a surprise, as the bootloader for this image is based on grub. >> >> I tried to modify meta-yocto-bsp/conf/machine/genericarm64.conf to use the "grub-efi-bootaa64.efi" file instead. However, while runqemu doesn't complain any more, the virtual machine doesn't seem to boot. >> >> Any workaround for testing the "genericarm64" machine through the "runqemu" script? >> >> In the long run, it would be great if the normal "runqemu" command worked out of the box. > From the genericarm64 README: > > There is also limited support for booting a genericarm64 image inside QEMU. When > building the image also build the `u-boot` recipe to build the required > firmware (note that this firmware will _not_ boot on real hardware), then use > `runqemu` as usual. > > That uboot will then chainload into grub. > > I don’t think it’s appropriate to always build the uboot because there’s a risk that people will think it’s suitable for the target hardware, when it’s only useful with a qemu. Understood! Indeed the following does the trick: IMAGE_INSTALL:append = " u-boot" Thanks again Michael. -- Michael Opdenacker Root Commit Yocto Project and OpenEmbedded Training course - Learn by doing: https://rootcommit.com/training/yocto/