Factor out ppc-specific bdinfo setup from generic init sequence to
arch_setup_bdinfo in arch/powerpc/lib/bdinfo.c.

Signed-off-by: Ovidiu Panait <ovidiu.pan...@windriver.com>
---

 arch/powerpc/lib/bdinfo.c | 42 +++++++++++++++++++++++++++++++++++++++
 common/board_f.c          | 39 ++----------------------------------
 2 files changed, 44 insertions(+), 37 deletions(-)

diff --git a/arch/powerpc/lib/bdinfo.c b/arch/powerpc/lib/bdinfo.c
index d8c64155f0..49635874cf 100644
--- a/arch/powerpc/lib/bdinfo.c
+++ b/arch/powerpc/lib/bdinfo.c
@@ -11,6 +11,48 @@
 
 DECLARE_GLOBAL_DATA_PTR;
 
+int arch_setup_bdinfo(void)
+{
+       bd_t *bd = gd->bd;
+
+       /*
+        * Save local variables to board info struct
+        */
+       bd->bi_memstart = CONFIG_SYS_SDRAM_BASE;        /* start of memory */
+       bd->bi_memsize = gd->ram_size;                  /* size in bytes */
+
+#ifdef CONFIG_SYS_SRAM_BASE
+       bd->bi_sramstart = CONFIG_SYS_SRAM_BASE; /* start of SRAM */
+       bd->bi_sramsize = CONFIG_SYS_SRAM_SIZE;  /* size  of SRAM */
+#endif
+
+#if defined(CONFIG_E500) || defined(CONFIG_MPC86xx)
+       bd->bi_immr_base = CONFIG_SYS_IMMR;     /* base  of IMMR register     */
+#endif
+
+#if defined(CONFIG_MPC83xx)
+       bd->bi_immrbar = CONFIG_SYS_IMMR;
+#endif
+
+       bd->bi_intfreq = gd->cpu_clk;   /* Internal Freq, in Hz */
+       bd->bi_busfreq = gd->bus_clk;   /* Bus Freq,      in Hz */
+
+#if defined(CONFIG_CPM2)
+       bd->bi_cpmfreq = gd->arch.cpm_clk;
+       bd->bi_brgfreq = gd->arch.brg_clk;
+       bd->bi_sccfreq = gd->arch.scc_clk;
+       bd->bi_vco = gd->arch.vco_out;
+#endif /* CONFIG_CPM2 */
+
+#if defined(CONFIG_EXTRA_CLOCK)
+       bd->bi_inpfreq = gd->arch.inp_clk;      /* input Freq in Hz */
+       bd->bi_vcofreq = gd->arch.vco_clk;      /* vco Freq in Hz */
+       bd->bi_flbfreq = gd->arch.flb_clk;      /* flexbus Freq in Hz */
+#endif
+
+       return 0;
+}
+
 void __weak board_detail(void)
 {
        /* Please define board_detail() for your PPC platform */
diff --git a/common/board_f.c b/common/board_f.c
index 7d65879b93..960a9c83db 100644
--- a/common/board_f.c
+++ b/common/board_f.c
@@ -602,8 +602,7 @@ __weak int arch_setup_bdinfo(void)
        return 0;
 }
 
-#if defined(CONFIG_MIPS) || defined(CONFIG_PPC) || \
-       defined(CONFIG_SH)
+#if defined(CONFIG_MIPS) || defined(CONFIG_SH)
 static int setup_board_part1(void)
 {
        bd_t *bd = gd->bd;
@@ -619,36 +618,6 @@ static int setup_board_part1(void)
        bd->bi_sramsize = CONFIG_SYS_SRAM_SIZE;         /* size  of SRAM */
 #endif
 
-#if defined(CONFIG_E500) || defined(CONFIG_MPC86xx)
-       bd->bi_immr_base = CONFIG_SYS_IMMR;     /* base  of IMMR register     */
-#endif
-#if defined(CONFIG_MPC83xx)
-       bd->bi_immrbar = CONFIG_SYS_IMMR;
-#endif
-
-       return 0;
-}
-#endif
-
-#if defined(CONFIG_PPC)
-static int setup_board_part2(void)
-{
-       bd_t *bd = gd->bd;
-
-       bd->bi_intfreq = gd->cpu_clk;   /* Internal Freq, in Hz */
-       bd->bi_busfreq = gd->bus_clk;   /* Bus Freq,      in Hz */
-#if defined(CONFIG_CPM2)
-       bd->bi_cpmfreq = gd->arch.cpm_clk;
-       bd->bi_brgfreq = gd->arch.brg_clk;
-       bd->bi_sccfreq = gd->arch.scc_clk;
-       bd->bi_vco = gd->arch.vco_out;
-#endif /* CONFIG_CPM2 */
-#if defined(CONFIG_EXTRA_CLOCK)
-       bd->bi_inpfreq = gd->arch.inp_clk;      /* input Freq in Hz */
-       bd->bi_vcofreq = gd->arch.vco_clk;      /* vco Freq in Hz */
-       bd->bi_flbfreq = gd->arch.flb_clk;      /* flexbus Freq in Hz */
-#endif
-
        return 0;
 }
 #endif
@@ -974,13 +943,9 @@ static const init_fnc_t init_sequence_f[] = {
        dram_init_banksize,
        show_dram_config,
        arch_setup_bdinfo,
-#if defined(CONFIG_MIPS) || defined(CONFIG_PPC) || \
-       defined(CONFIG_SH)
+#if defined(CONFIG_MIPS) || defined(CONFIG_SH)
        setup_board_part1,
-#endif
-#if defined(CONFIG_PPC)
        INIT_FUNC_WATCHDOG_RESET
-       setup_board_part2,
 #endif
        display_new_sp,
 #ifdef CONFIG_OF_BOARD_FIXUP
-- 
2.17.1

Reply via email to