X-Git-Url: https://git.librecmc.org/?a=blobdiff_plain;f=arch%2Favr32%2Flib%2Fboard.c;h=d7a64b48727aedaf5879ace43dd1faf9f3b759e0;hb=74b5b5dbc3345a8fad4bc798f8f88d07d2ef0008;hp=65473a107bc025c1882aa662ab5810711b182853;hpb=9023ae305919d0aecb4a22726b9d08c6b08189d7;p=oweals%2Fu-boot.git diff --git a/arch/avr32/lib/board.c b/arch/avr32/lib/board.c index 65473a107b..d7a64b4872 100644 --- a/arch/avr32/lib/board.c +++ b/arch/avr32/lib/board.c @@ -25,6 +25,7 @@ #include #include #include +#include #ifdef CONFIG_BITBANGMII #include @@ -32,11 +33,15 @@ #include #include +#include #ifndef CONFIG_IDENT_STRING #define CONFIG_IDENT_STRING "" #endif +#ifdef CONFIG_GENERIC_ATMEL_MCI +#include +#endif DECLARE_GLOBAL_DATA_PTR; unsigned long monitor_flash_len; @@ -49,6 +54,13 @@ static int __do_nothing(void) int board_postclk_init(void) __attribute__((weak, alias("__do_nothing"))); int board_early_init_r(void) __attribute__((weak, alias("__do_nothing"))); +/* provide cpu_mmc_init, to overwrite provide board_mmc_init */ +int cpu_mmc_init(bd_t *bd) +{ + /* This calls the atmel_mci_init in gen_atmel_mci.c */ + return atmel_mci_init((void *)ATMEL_BASE_MMCI); +} + #ifdef CONFIG_SYS_DMA_ALLOC_LEN #include #include @@ -95,19 +107,10 @@ static inline void dma_alloc_init(void) static int init_baudrate(void) { - char tmp[64]; - int i; - - i = getenv_f("baudrate", tmp, sizeof(tmp)); - if (i > 0) { - gd->baudrate = simple_strtoul(tmp, NULL, 10); - } else { - gd->baudrate = CONFIG_BAUDRATE; - } + gd->baudrate = getenv_ulong("baudrate", 10, CONFIG_BAUDRATE); return 0; } - static int display_banner (void) { printf ("\n\n%s\n\n", version_string); @@ -251,7 +254,6 @@ void board_init_r(gd_t *new_gd, ulong dest_addr) #ifndef CONFIG_ENV_IS_NOWHERE extern char * env_name_spec; #endif - char *s; bd_t *bd; gd = new_gd; @@ -313,29 +315,24 @@ void board_init_r(gd_t *new_gd, ulong dest_addr) /* initialize environment */ env_relocate(); - bd->bi_ip_addr = getenv_IPaddr ("ipaddr"); - stdio_init(); jumptable_init(); console_init_r(); - s = getenv("loadaddr"); - if (s) - load_addr = simple_strtoul(s, NULL, 16); + /* Initialize from environment */ + load_addr = getenv_ulong("loadaddr", 16, load_addr); #ifdef CONFIG_BITBANGMII bb_miiphy_init(); #endif #if defined(CONFIG_CMD_NET) - s = getenv("bootfile"); - if (s) - copy_filename(BootFile, s, sizeof(BootFile)); -#if defined(CONFIG_NET_MULTI) puts("Net: "); -#endif eth_initialize(gd->bd); #endif +#ifdef CONFIG_GENERIC_ATMEL_MCI + mmc_initialize(gd->bd); +#endif for (;;) { main_loop(); }