
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 ---
Changes in v2: - new patch in this series
board/xilinx/microblaze-generic/microblaze-generic.c | 6 ++++-- include/configs/microblaze-generic.h | 1 + 2 files changed, 5 insertions(+), 2 deletions(-)
diff --git a/board/xilinx/microblaze-generic/microblaze-generic.c b/board/xilinx/microblaze-generic/microblaze-generic.c index 0d7bed58d808..ccd4ec955b5b 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 9b90aa7dc0ae..394568dba6c8 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