We now have EFI support in U-Boot which worked out of the box on all systems that I tried it on so far. Except for the LS2080ARDB. With this patch set I can successfully boot grub2 and Linux from there on such a system - even using PXE.
v3 -> v4: - Add CONFIG_CMD_FS_GENERIC to defconfig - Move code into generic quiesce weak function - Exit device for real when going to Linux - Only apply DPL if we have something to apply - New: armv8: ls2080a: Declare spin tables as reserved for efi loader - New: efi_loader: Allow boards to implement get_time and reset_system - New: armv8: fsl-layerscape: Add support for efi_loader RTS reset - New: efi_loader: Declare secure memory as reserved - New: efi_loader: Allow bouncing for network Alexander Graf (9): ls2080: Exit dpaa only right before exiting U-Boot efi_loader: AArch64: Run EFI payloads in EL2 if U-Boot runs in EL3 ls2080ardb: Reserve DP-DDR RAM ls2080ardb: Convert to distro boot armv8: ls2080a: Declare spin tables as reserved for efi loader efi_loader: Allow boards to implement get_time and reset_system armv8: fsl-layerscape: Add support for efi_loader RTS reset efi_loader: Declare secure memory as reserved efi_loader: Allow bouncing for network arch/arm/cpu/armv8/fsl-layerscape/cpu.c | 33 +++++++++- arch/arm/cpu/armv8/fsl-layerscape/fdt.c | 6 ++ arch/arm/include/asm/armv8/mmu.h | 19 +++--- arch/arm/include/asm/u-boot-arm.h | 1 + arch/arm/lib/bootm.c | 7 +++ board/freescale/ls2080a/ls2080a.c | 6 +- board/freescale/ls2080aqds/ls2080aqds.c | 11 ++-- board/freescale/ls2080ardb/ls2080ardb.c | 20 ++++-- cmd/bootefi.c | 15 +++++ configs/ls2080a_emu_defconfig | 1 + configs/ls2080a_simu_defconfig | 1 + configs/ls2080aqds_SECURE_BOOT_defconfig | 1 + configs/ls2080aqds_defconfig | 1 + configs/ls2080aqds_nand_defconfig | 1 + configs/ls2080ardb_SECURE_BOOT_defconfig | 1 + configs/ls2080ardb_defconfig | 1 + configs/ls2080ardb_nand_defconfig | 1 + drivers/net/fsl-mc/mc.c | 24 +++++++- include/configs/ls2080ardb.h | 26 +++++++- include/efi_loader.h | 18 ++++++ lib/efi_loader/efi_boottime.c | 2 + lib/efi_loader/efi_memory.c | 15 +++++ lib/efi_loader/efi_net.c | 7 +++ lib/efi_loader/efi_runtime.c | 101 +++++++++++++++++++++++++++---- 24 files changed, 283 insertions(+), 36 deletions(-) -- 1.8.5.6 _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot