Commit 92b611e8 authored by Patrick Delaunay's avatar Patrick Delaunay Committed by Patrice Chotard
Browse files

stm32mp: correctly handle board_get_usable_ram_top(0)

The function board_get_usable_ram_top can be called after relocation
with total_size = 0 to get the uppermost pointer that is valid to access
in U-Boot.

When total_size = 0, the reserved memory should be not take in account
with lmb library and 'gd->ram_base + gd->ram_size' can be used.

It is the case today in lib/efi_loader/efi_memory.c:efi_add_known_memory()
and this patch avoids that the reserved memory for OP-TEE is not part of
the EFI available memory regions.

Signed-off-by: Patrick Delaunay's avatarPatrick Delaunay <>
Reviewed-by: Patrice Chotard's avatarPatrice Chotard <>
parent f64d32a2
......@@ -46,6 +46,9 @@ ulong board_get_usable_ram_top(ulong total_size)
phys_addr_t reg;
struct lmb lmb;
if (!total_size)
return gd->ram_base + gd->ram_size;
/* found enough not-reserved memory to relocated U-Boot */
lmb_add(&lmb, gd->ram_base, gd->ram_size);
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment