
From: Patrice Chotard patrice.chotard@st.com
If gd->ram_top has been tuned using board_get_usable_ram_top(), it must be taken into account when reserving arch lmb.
Signed-off-by: Patrice Chotard patrice.chotard@st.com Reviewed-by: Patrick DELAUNAY patrick.delaunay@st.com Signed-off-by: Patrick Delaunay patrick.delaunay@st.com ---
arch/arm/lib/bootm.c | 3 +++ 1 file changed, 3 insertions(+)
diff --git a/arch/arm/lib/bootm.c b/arch/arm/lib/bootm.c index a135bcfc7b..f4b5ca6de0 100644 --- a/arch/arm/lib/bootm.c +++ b/arch/arm/lib/bootm.c @@ -75,6 +75,9 @@ void arch_lmb_reserve(struct lmb *lmb) gd->bd->bi_dram[bank].size - 1; if (sp > bank_end) continue; + if (bank_end > gd->ram_top) + bank_end = gd->ram_top - 1; + lmb_reserve(lmb, sp, bank_end - sp + 1); break; }