Disable a few things which interfere with the EFI init. This allows QEMU to
to boot into EFI, load a U-Boot payload then boot to the U-Boot prompt.

Signed-off-by: Simon Glass <s...@chromium.org>
---

 arch/x86/cpu/qemu/Makefile       | 5 ++++-
 arch/x86/cpu/qemu/qemu.c         | 2 ++
 board/emulation/qemu-x86/Kconfig | 5 +++--
 3 files changed, 9 insertions(+), 3 deletions(-)

diff --git a/arch/x86/cpu/qemu/Makefile b/arch/x86/cpu/qemu/Makefile
index be79723..9a66b16 100644
--- a/arch/x86/cpu/qemu/Makefile
+++ b/arch/x86/cpu/qemu/Makefile
@@ -4,5 +4,8 @@
 # SPDX-License-Identifier:     GPL-2.0+
 #
 
-obj-y += car.o dram.o qemu.o
+ifndef CONFIG_EFI_STUB
+obj-y += car.o dram.o
+endif
+obj-y += qemu.o
 obj-$(CONFIG_PCI) += pci.o
diff --git a/arch/x86/cpu/qemu/qemu.c b/arch/x86/cpu/qemu/qemu.c
index 930d2b6..64634a9 100644
--- a/arch/x86/cpu/qemu/qemu.c
+++ b/arch/x86/cpu/qemu/qemu.c
@@ -25,11 +25,13 @@ int arch_cpu_init(void)
        return 0;
 }
 
+#ifndef CONFIG_EFI_STUB
 int print_cpuinfo(void)
 {
        post_code(POST_CPU_INFO);
        return default_print_cpuinfo();
 }
+#endif
 
 void reset_cpu(ulong addr)
 {
diff --git a/board/emulation/qemu-x86/Kconfig b/board/emulation/qemu-x86/Kconfig
index e777ef4..930eeb8 100644
--- a/board/emulation/qemu-x86/Kconfig
+++ b/board/emulation/qemu-x86/Kconfig
@@ -13,11 +13,12 @@ config SYS_CONFIG_NAME
        default "qemu-x86"
 
 config SYS_TEXT_BASE
-       default 0xfff00000
+       default 0xfff00000 if !EFI_STUB
+        default 0x01110000 if EFI_STUB
 
 config BOARD_SPECIFIC_OPTIONS # dummy
        def_bool y
-       select X86_RESET_VECTOR
+       select X86_RESET_VECTOR if !EFI_STUB
        select QEMU
        select BOARD_ROMSIZE_KB_1024
 
-- 
2.4.3.573.g4eafbef

_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot

Reply via email to