efi: Tidy up device-tree-size calculation in copy_fdt()

This is a bit confusing at present since it adds 4KB to the pointer, then
rounds it up. It looks like a bug, but is not.

Move the 4KB addition into a separate statement and expand the comment.

Signed-off-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Alexander Graf <agraf@suse.de>
lime2-spi
Simon Glass 7 years ago committed by Alexander Graf
parent 404ea59364
commit bc9a638a10
  1. 8
      cmd/bootefi.c

@ -148,8 +148,12 @@ static void *copy_fdt(void *fdt)
fdt_ram_start = ram_start;
}
/* Give us at least 4kb breathing room */
fdt_size = ALIGN(fdt_size + 4096, EFI_PAGE_SIZE);
/*
* Give us at least 4KB of breathing room in case the device tree needs
* to be expanded later. Round up to the nearest EFI page boundary.
*/
fdt_size += 4096;
fdt_size = ALIGN(fdt_size + EFI_PAGE_SIZE - 1, EFI_PAGE_SIZE);
fdt_pages = fdt_size >> EFI_PAGE_SHIFT;
/* Safe fdt location is at 128MB */

Loading…
Cancel
Save