diff options
Diffstat (limited to 'arch')
-rw-r--r-- | arch/arm/cpu/arm926ejs/at91/at91sam9260_devices.c | 2 | ||||
-rw-r--r-- | arch/avr32/lib/board.c | 15 |
2 files changed, 16 insertions, 1 deletions
diff --git a/arch/arm/cpu/arm926ejs/at91/at91sam9260_devices.c b/arch/arm/cpu/arm926ejs/at91/at91sam9260_devices.c index a4e9f09..62f76fa 100644 --- a/arch/arm/cpu/arm926ejs/at91/at91sam9260_devices.c +++ b/arch/arm/cpu/arm926ejs/at91/at91sam9260_devices.c @@ -196,7 +196,7 @@ void at91_macb_hw_init(void) } #endif -#if defined(CONFIG_ATMEL_MCI) || defined(CONFIG_GENERIC_ATMEL_MCI) +#if defined(CONFIG_GENERIC_ATMEL_MCI) void at91_mci_hw_init(void) { at91_set_a_periph(AT91_PIO_PORTA, 8, 1); /* MCCK */ diff --git a/arch/avr32/lib/board.c b/arch/avr32/lib/board.c index 63fe297..d626c29 100644 --- a/arch/avr32/lib/board.c +++ b/arch/avr32/lib/board.c @@ -25,6 +25,7 @@ #include <stdio_dev.h> #include <version.h> #include <net.h> +#include <atmel_mci.h> #ifdef CONFIG_BITBANGMII #include <miiphy.h> @@ -32,11 +33,15 @@ #include <asm/sections.h> #include <asm/arch/mmu.h> +#include <asm/arch/hardware.h> #ifndef CONFIG_IDENT_STRING #define CONFIG_IDENT_STRING "" #endif +#ifdef CONFIG_GENERIC_ATMEL_MCI +#include <mmc.h> +#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 <asm/arch/cacheflush.h> #include <asm/io.h> @@ -324,6 +336,9 @@ void board_init_r(gd_t *new_gd, ulong dest_addr) eth_initialize(gd->bd); #endif +#ifdef CONFIG_GENERIC_ATMEL_MCI + mmc_initialize(gd->bd); +#endif for (;;) { main_loop(); } |