efi_loader: Handle memory overflows

jetson-tk1 has 2 GB of RAM at 0x80000000, causing gd->ram_top to be zero.
Handle this by either avoiding ram_top or by using the same type as
ram_top to reverse the overflow effect.

Cc: Alexander Graf <agraf@suse.de>
Signed-off-by: Andreas Färber <afaerber@suse.de>
Reviewed-by: Alexander Graf <agraf@suse.de>
master
Andreas Färber 9 years ago committed by Tom Rini
parent bd716dd03d
commit dede284d1c
  1. 8
      lib/efi_loader/efi_memory.c

@ -220,7 +220,7 @@ efi_status_t efi_allocate_pages(int type, int memory_type,
switch (type) {
case 0:
/* Any page */
addr = efi_find_free_memory(len, gd->ram_top);
addr = efi_find_free_memory(len, gd->start_addr_sp);
if (!addr) {
r = EFI_NOT_FOUND;
break;
@ -320,9 +320,9 @@ efi_status_t efi_get_memory_map(unsigned long *memory_map_size,
int efi_memory_init(void)
{
uint64_t runtime_start, runtime_end, runtime_pages;
uint64_t uboot_start, uboot_pages;
uint64_t uboot_stack_size = 16 * 1024 * 1024;
unsigned long runtime_start, runtime_end, runtime_pages;
unsigned long uboot_start, uboot_pages;
unsigned long uboot_stack_size = 16 * 1024 * 1024;
int i;
/* Add RAM */

Loading…
Cancel
Save