summaryrefslogtreecommitdiff
path: root/arch/avr32/lib/board.c
diff options
context:
space:
mode:
authorSven Schnelle <svens@stackframe.org>2011-10-21 12:49:25 (GMT)
committerAndreas Bießmann <andreas@localhost>2012-03-13 11:06:41 (GMT)
commit72fa467988e7944407a634ddc4bc6a2df685c04c (patch)
treefa5fc3ddf5337aaabbfbe0ae1c2ff567d536be6d /arch/avr32/lib/board.c
parent6751b05f855bbe56005d5b88d4eb58bcd52170d2 (diff)
downloadu-boot-fsl-qoriq-72fa467988e7944407a634ddc4bc6a2df685c04c.tar.xz
ATMEL: use generic mmc framework
gen_atmel_mci works on AVR32 as well, so no need to use the legacy mmc driver. This also has the nice side effect of being able to use SDHC cards an those boards. Signed-off-by: Sven Schnelle <svens@stackframe.org> Signed-off-by: Andreas Bießmann <andreas.devel@googlemail.com>
Diffstat (limited to 'arch/avr32/lib/board.c')
-rw-r--r--arch/avr32/lib/board.c15
1 files changed, 15 insertions, 0 deletions
diff --git a/arch/avr32/lib/board.c b/arch/avr32/lib/board.c
index 63fe297..e110d23 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_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();
}