console_init_f,
dram_init_f,
calculate_relocation_address,
- copy_uboot_to_ram,
- clear_bss,
- do_elf_reloc_fixups,
NULL,
};
init_fnc_t *init_sequence_r[] = {
- copy_gd_to_ram,
cpu_init_r, /* basic cpu dependent setup */
board_early_init_r, /* basic board dependent setup */
dram_init, /* configure available RAM banks */
hang();
}
- gd->flags |= GD_FLG_RELOC;
-
/*
* SDRAM is now initialised, U-Boot has been copied into SDRAM,
* the BSS has been cleared etc. The final stack can now be setup
void board_init_f_r(void)
{
+ if (copy_gd_to_ram() != 0)
+ hang();
+
+ if (init_cache() != 0)
+ hang();
+
+ copy_uboot_to_ram();
+ clear_bss();
+ do_elf_reloc_fixups();
+
/*
* Transfer execution from Flash to RAM by calculating the address
* of the in-RAM copy of board_init_r() and calling it
/* compiler optimization barrier needed for GCC >= 3.4 */
__asm__ __volatile__("" : : : "memory");
+ gd->flags |= GD_FLG_RELOC;
+
gd->bd = &bd_data;
memset(gd->bd, 0, sizeof(bd_t));
show_boot_progress(0x22);