[U-Boot] [PATCH v3 25/28] x86: qemu: Support operation as an EFI payload
Simon Glass
sjg at chromium.org
Wed Aug 5 20:03:42 CEST 2015
On 5 August 2015 at 02:19, Bin Meng <bmeng.cn at gmail.com> wrote:
> On Wed, Aug 5, 2015 at 2:34 AM, Simon Glass <sjg at chromium.org> wrote:
>> 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 <sjg at chromium.org>
>> Reviewed-by: Bin Meng <bmeng.cn at gmail.com>
>> ---
>>
>> Changes in v3: None
>> Changes in v2:
>> - Fix indenting in board/emulation/qemu-x86/Kconfig
>>
>> 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..c9181fc 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
>>
>> --
>
> Tested on QEMU 32-bit and 64-bit
> Tested-by: Bin Meng <bmeng.cn at gmail.com>
Applied to u-boot-x86.
More information about the U-Boot
mailing list