This avoids a possible overwrite of the (end of) ramdisk by u-boot.
The unused memory region for ppc boot currently starts 1k below the
do_bootm->bootm_start->arch_lmb_reserve stack ptr. This isn't enough since
do_bootm->do_bootm_linux->boot_relocate_fdt calls printf which may
very well use more than 1k stack space.

diff --git a/lib_ppc/bootm.c b/lib_ppc/bootm.c
index 0685a93..6702df5 100644
--- a/lib_ppc/bootm.c
+++ b/lib_ppc/bootm.c
@@ -163,8 +163,8 @@ void arch_lmb_reserve(struct lmb *lmb)
        sp = get_sp();
        debug ("## Current stack ends at 0x%08lx\n", sp);
 
-       /* adjust sp by 1K to be safe */
-       sp -= 1024;
+       /* adjust sp by 4K to be safe */
+       sp -= 4096;
        lmb_reserve(lmb, sp, (CONFIG_SYS_SDRAM_BASE + get_effective_memsize() - 
sp));
 
        return ;
-- 
1.5.2.2

Signed-off-by: Norbert van Bolhuis <nvbolh...@aimvalley.nl>
_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot

Reply via email to