From: Heinrich Schuchardt Date: Mon, 28 Aug 2017 16:54:30 +0000 (+0200) Subject: efi_loader: bootefi hello should use loadaddr X-Git-Tag: v2017.11-rc1~4^2~44 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=51c533fdce75fbdec7de28a05a675a553d209bcb;p=oweals%2Fu-boot.git efi_loader: bootefi hello should use loadaddr Command 'bootefi hello' currently uses CONFIG_SYS_LOAD_ADDR as loading address. qemu machines have by default 128 MiB RAM. CONFIG_SYS_LOAD_ADDR for x86 is 0x20000000 (512 MiB). This causes 'bootefi hello' to fail. We should use the environment variable loadaddr if available. It defaults to 0x1000000 (16 MiB) on qemu_x86. Signed-off-by: Heinrich Schuchardt Signed-off-by: Alexander Graf --- diff --git a/cmd/bootefi.c b/cmd/bootefi.c index 3196d86040..c65c619d63 100644 --- a/cmd/bootefi.c +++ b/cmd/bootefi.c @@ -299,7 +299,11 @@ static int do_bootefi(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) if (!strcmp(argv[1], "hello")) { ulong size = __efi_hello_world_end - __efi_hello_world_begin; - addr = CONFIG_SYS_LOAD_ADDR; + saddr = env_get("loadaddr"); + if (saddr) + addr = simple_strtoul(saddr, NULL, 16); + else + addr = CONFIG_SYS_LOAD_ADDR; memcpy((char *)addr, __efi_hello_world_begin, size); } else #endif