board_f: Introduce arch_setup_bdinfo initcall

Certain architectures (ppc, mips, sh, m68k) use setup board_part1 and
setup_board_part2 calls during pre-relocation init to populate gd->bd
boardinfo fields. This makes the generic init sequence cluttered with
arch-specific ifdefs.

In order to clean these arch-specific sequences from generic init,
introduce arch_setup_bdinfo weak initcall so that everyone can define their
own bdinfo setup routines.

Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Ovidiu Panait <ovidiu.panait@windriver.com>
diff --git a/common/board_f.c b/common/board_f.c
index 72446f6..4356431 100644
--- a/common/board_f.c
+++ b/common/board_f.c
@@ -598,11 +598,16 @@
 	return 0;
 }
 
-int setup_bdinfo(void)
+__weak int arch_setup_bdinfo(void)
 {
 	return 0;
 }
 
+int setup_bdinfo(void)
+{
+	return arch_setup_bdinfo();
+}
+
 #if defined(CONFIG_M68K) || defined(CONFIG_MIPS) || defined(CONFIG_PPC) || \
 	defined(CONFIG_SH)
 static int setup_board_part1(void)