From: Michal Simek <michal.simek@xilinx.com>
Date: Fri, 11 Dec 2015 14:01:28 +0000 (+0100)
Subject: microblaze: Fix board_init calling sequence
X-Git-Tag: v2025.01-rc5-pxa1908~10446^2~50
X-Git-Url: http://git.dujemihanovic.xyz/html/index.html?a=commitdiff_plain;h=38c4761c236e0d8efd6b552d6b036015097c7bd9;p=u-boot.git

microblaze: Fix board_init calling sequence

board_init() is in final elf file but it is not called at all.
Use board_init_late() instead and call gpio_init() from it.

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

diff --git a/board/xilinx/microblaze-generic/microblaze-generic.c b/board/xilinx/microblaze-generic/microblaze-generic.c
index 0d7bed58d8..ccd4ec955b 100644
--- a/board/xilinx/microblaze-generic/microblaze-generic.c
+++ b/board/xilinx/microblaze-generic/microblaze-generic.c
@@ -76,7 +76,7 @@ int do_reset(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
 	return 0;
 }
 
-int gpio_init (void)
+static int gpio_init(void)
 {
 #ifdef CONFIG_XILINX_GPIO
 	reset_pin = gpio_alloc(CONFIG_SYS_GPIO_0_ADDR, "reset", 1);
@@ -86,7 +86,9 @@ int gpio_init (void)
 	return 0;
 }
 
-void board_init(void)
+int board_late_init(void)
 {
 	gpio_init();
+
+	return 0;
 }
diff --git a/include/configs/microblaze-generic.h b/include/configs/microblaze-generic.h
index 3cbec659a1..97a0d86b91 100644
--- a/include/configs/microblaze-generic.h
+++ b/include/configs/microblaze-generic.h
@@ -45,6 +45,7 @@
 # define CONFIG_XILINX_GPIO
 # define CONFIG_SYS_GPIO_0_ADDR		XILINX_GPIO_BASEADDR
 #endif
+#define CONFIG_BOARD_LATE_INIT
 
 /* interrupt controller */
 #ifdef XILINX_INTC_BASEADDR