]> git.kernelconcepts.de Git - karo-tx-uboot.git/blobdiff - lib_avr32/board.c
include/sha256.h: fix file permissions.
[karo-tx-uboot.git] / lib_avr32 / board.c
index 8b9ca38f50cf2bf16b11ccbe8df752c52da747e5..d6423d4f3f91b5316507a22e4735e7cb42781cbe 100644 (file)
@@ -264,6 +264,7 @@ void board_init_r(gd_t *new_gd, ulong dest_addr)
 #ifndef CFG_ENV_IS_NOWHERE
        extern char * env_name_spec;
 #endif
+       char *s;
        cmd_tbl_t *cmdtp;
        bd_t *bd;
 
@@ -310,10 +311,22 @@ void board_init_r(gd_t *new_gd, ulong dest_addr)
        malloc_bin_reloc();
        dma_alloc_init();
        board_init_info();
-       flash_init();
+
+       enable_interrupts();
+
+       bd->bi_flashstart = 0;
+       bd->bi_flashsize = 0;
+       bd->bi_flashoffset = 0;
+
+#ifndef CFG_NO_FLASH
+       bd->bi_flashstart = CFG_FLASH_BASE;
+       bd->bi_flashsize = flash_init();
+       bd->bi_flashoffset = (unsigned long)_edata - (unsigned long)_text;
 
        if (bd->bi_flashsize)
                display_flash_config();
+#endif
+
        if (bd->bi_dram[0].size)
                display_dram_config();
 
@@ -324,11 +337,20 @@ void board_init_r(gd_t *new_gd, ulong dest_addr)
        /* initialize environment */
        env_relocate();
 
+       bd->bi_ip_addr = getenv_IPaddr ("ipaddr");
+
        devices_init();
        jumptable_init();
        console_init_r();
 
+       s = getenv("loadaddr");
+       if (s)
+               load_addr = simple_strtoul(s, NULL, 16);
+
 #if defined(CONFIG_CMD_NET)
+       s = getenv("bootfile");
+       if (s)
+               copy_filename(BootFile, s, sizeof(BootFile));
 #if defined(CONFIG_NET_MULTI)
        puts("Net:   ");
 #endif