From: Michal Simek <michal.simek@xilinx.com>
Date: Tue, 27 Jan 2015 13:06:14 +0000 (+0100)
Subject: microblaze: Fix gd_t address which is placed at the end of BRAM
X-Git-Tag: v2025.01-rc5-pxa1908~13801^2~8
X-Git-Url: http://git.dujemihanovic.xyz/%22/icons/right.gif/static/git-favicon.png?a=commitdiff_plain;h=9cef20b10929d7ad047b071c3dcb924401bf78e8;p=u-boot.git

microblaze: Fix gd_t address which is placed at the end of BRAM

Setup gd from ASM to be availalbe for board_init_r.
Setting it up in spl_board_init is too late when
MALLOC is used.
Space for gd is located behind MALLOC area at the end of BRAM.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
---

diff --git a/arch/microblaze/cpu/spl.c b/arch/microblaze/cpu/spl.c
index 091226133e..2cc0a2da89 100644
--- a/arch/microblaze/cpu/spl.c
+++ b/arch/microblaze/cpu/spl.c
@@ -25,8 +25,6 @@ u32 spl_boot_device(void)
 /* Board initialization after bss clearance */
 void spl_board_init(void)
 {
-	gd = (gd_t *)CONFIG_SPL_STACK_ADDR;
-
 	/* enable console uart printing */
 	preloader_console_init();
 }
diff --git a/arch/microblaze/cpu/start.S b/arch/microblaze/cpu/start.S
index e0e3470a18..14c2f12da0 100644
--- a/arch/microblaze/cpu/start.S
+++ b/arch/microblaze/cpu/start.S
@@ -152,6 +152,7 @@ clear_bss:
 #ifndef CONFIG_SPL_BUILD
 	brai	board_init_f
 #else
+	addi	r31, r0, CONFIG_SYS_SPL_MALLOC_END
 	brai	board_init_r
 #endif
 1:	bri	1b