[U-Boot] [BUG] efiloader: cannot boot OpenBSD on armv7 via bootefi

Hello Nedko,
you reported on the IRC channel:
<nedko> i'm trying to get openbsd-6.4 kernel booted with latest u-boot. it works with both v2018.09 and v2019.01, but not with latest git <nedko> i'm reproducing this with default configs for sunxi lime2-emmc <nedko> it seems that openbsd kernel loading stage is going well, but then execution does not happen, there is no "OpenBSD/armv7 booting ..."
Olimex A20-OLinuXino-LIME2-eMMC uses the ARMv7 architecture.
The relevant source for the OpenBSD bootloader can be found at
https://github.com/openbsd/src.git in sys/arch/armv7/stand/efiboot/
While on the armv8 architecture SetVirtualAddressMap() is called it is not called for armv7.
Alex has described in patch
efi_loader: Patch non-runtime code out at ExitBootServices already https://lists.denx.de/pipermail/u-boot/2019-January/356845.html
that currently U-Boot does not support booting without calling SetVirtualAddressMap() and provided a fix.
The patch has not been merged due to requested changes.
I tried to reproduce the problem on a BananaPi
This was my recipe: Copy https://ftp.eu.openbsd.org/pub/OpenBSD/6.4/armv7/miniroot-cubox-64.fs to an SD-Card. Add Linux sun7i-a20-bananapi.dtb to the first partition. Flash Bananapi_defconfig U-Boot v2019.04-rc3 to the SD-Card
After resetting the board the installer started. All further reboots failed even with Alex's patch applied.
Further analysis is needed.
Best regards
Heinrich
participants (1)
-
Heinrich Schuchardt