]> git.proxmox.com Git - mirror_ubuntu-zesty-kernel.git/blobdiff - drivers/firmware/efi/libstub/arm-stub.c
UBUNTU: SAUCE: efi: arm-stub: Correct FDT and initrd allocation rules for arm64
[mirror_ubuntu-zesty-kernel.git] / drivers / firmware / efi / libstub / arm-stub.c
index b4f7d78f9e8bdeafb4e7bb408f3648aa9cacd45d..557281fe375fbd372b27552593c409bea1c340c5 100644 (file)
@@ -333,8 +333,9 @@ unsigned long efi_entry(void *handle, efi_system_table_t *sys_table,
        if (!fdt_addr)
                pr_efi(sys_table, "Generating empty DTB\n");
 
-       status = handle_cmdline_files(sys_table, image, cmdline_ptr,
-                                     "initrd=", dram_base + SZ_512M,
+       status = handle_cmdline_files(sys_table, image, cmdline_ptr, "initrd=",
+                                     efi_get_max_initrd_addr(dram_base,
+                                                             *image_addr),
                                      (unsigned long *)&initrd_addr,
                                      (unsigned long *)&initrd_size);
        if (status != EFI_SUCCESS)
@@ -344,7 +345,7 @@ unsigned long efi_entry(void *handle, efi_system_table_t *sys_table,
 
        new_fdt_addr = fdt_addr;
        status = allocate_new_fdt_and_exit_boot(sys_table, handle,
-                               &new_fdt_addr, dram_base + MAX_FDT_OFFSET,
+                               &new_fdt_addr, efi_get_max_fdt_addr(dram_base),
                                initrd_addr, initrd_size, cmdline_ptr,
                                fdt_addr, fdt_size);