aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/firmware/efi/libstub/arm-stub.c
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2015-04-13 13:22:30 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2015-04-13 13:22:30 -0400
commit9c65e12a55fea2da50f4069ec0dc47c50b7bd2bb (patch)
treee371d6da040aaf8b56f060dd25a19b918229927e /drivers/firmware/efi/libstub/arm-stub.c
parent67dbb3a099d0fe04df5974edddc0b8c64a9f7529 (diff)
parent84a87c628a12f95d8b0c86cc7b8edb28ea5edf90 (diff)
Merge branch 'core-efi-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
Pull EFI update from Ingo Molnar: "This tree includes various fixes, cleanups, a new efi=debug boot option and EFI boot stub memory allocation optimizations" * 'core-efi-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: efi/libstub: Retrieve FDT size when loaded from UEFI config table efi: Clean up the efi_call_phys_[prolog|epilog]() save/restore interaction efi: Disable interrupts around EFI calls, not in the epilog/prolog calls x86/efi: Add a "debug" option to the efi= cmdline firmware: dmi_scan: Use direct access to static vars firmware: dmi_scan: Use full dmi version for SMBIOS3
Diffstat (limited to 'drivers/firmware/efi/libstub/arm-stub.c')
-rw-r--r--drivers/firmware/efi/libstub/arm-stub.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/drivers/firmware/efi/libstub/arm-stub.c b/drivers/firmware/efi/libstub/arm-stub.c
index dcae482a9a17..e29560e6b40b 100644
--- a/drivers/firmware/efi/libstub/arm-stub.c
+++ b/drivers/firmware/efi/libstub/arm-stub.c
@@ -175,7 +175,7 @@ unsigned long efi_entry(void *handle, efi_system_table_t *sys_table,
175 unsigned long initrd_addr; 175 unsigned long initrd_addr;
176 u64 initrd_size = 0; 176 u64 initrd_size = 0;
177 unsigned long fdt_addr = 0; /* Original DTB */ 177 unsigned long fdt_addr = 0; /* Original DTB */
178 u64 fdt_size = 0; /* We don't get size from configuration table */ 178 unsigned long fdt_size = 0;
179 char *cmdline_ptr = NULL; 179 char *cmdline_ptr = NULL;
180 int cmdline_size = 0; 180 int cmdline_size = 0;
181 unsigned long new_fdt_addr; 181 unsigned long new_fdt_addr;
@@ -239,8 +239,7 @@ unsigned long efi_entry(void *handle, efi_system_table_t *sys_table,
239 } else { 239 } else {
240 status = handle_cmdline_files(sys_table, image, cmdline_ptr, 240 status = handle_cmdline_files(sys_table, image, cmdline_ptr,
241 "dtb=", 241 "dtb=",
242 ~0UL, (unsigned long *)&fdt_addr, 242 ~0UL, &fdt_addr, &fdt_size);
243 (unsigned long *)&fdt_size);
244 243
245 if (status != EFI_SUCCESS) { 244 if (status != EFI_SUCCESS) {
246 pr_efi_err(sys_table, "Failed to load device tree!\n"); 245 pr_efi_err(sys_table, "Failed to load device tree!\n");
@@ -252,7 +251,7 @@ unsigned long efi_entry(void *handle, efi_system_table_t *sys_table,
252 pr_efi(sys_table, "Using DTB from command line\n"); 251 pr_efi(sys_table, "Using DTB from command line\n");
253 } else { 252 } else {
254 /* Look for a device tree configuration table entry. */ 253 /* Look for a device tree configuration table entry. */
255 fdt_addr = (uintptr_t)get_fdt(sys_table); 254 fdt_addr = (uintptr_t)get_fdt(sys_table, &fdt_size);
256 if (fdt_addr) 255 if (fdt_addr)
257 pr_efi(sys_table, "Using DTB from configuration table\n"); 256 pr_efi(sys_table, "Using DTB from configuration table\n");
258 } 257 }