[PATCH] boards: mx23evk: add MMC support
Wolfram Sang
w.sang at pengutronix.de
Tue Jan 3 09:27:36 EST 2012
Using SSP1 since this is the default configuration.
Signed-off-by: Wolfram Sang <w.sang at pengutronix.de>
---
arch/arm/boards/freescale-mx23-evk/mx23-evk.c | 31 +++++++++++++++++++++++++
1 files changed, 31 insertions(+), 0 deletions(-)
diff --git a/arch/arm/boards/freescale-mx23-evk/mx23-evk.c b/arch/arm/boards/freescale-mx23-evk/mx23-evk.c
index 47f6769..20d49fd 100644
--- a/arch/arm/boards/freescale-mx23-evk/mx23-evk.c
+++ b/arch/arm/boards/freescale-mx23-evk/mx23-evk.c
@@ -1,5 +1,6 @@
/*
* (C) Copyright 2010 Juergen Beisert - Pengutronix
+ * (C) Copyright 2011 Wolfram Sang - Pengutronix
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
@@ -21,9 +22,28 @@
#include <init.h>
#include <gpio.h>
#include <environment.h>
+#include <mci.h>
#include <asm/armlinux.h>
#include <generated/mach-types.h>
#include <mach/imx-regs.h>
+#include <mach/clock.h>
+#include <mach/mci.h>
+
+static struct mxs_mci_platform_data mci_pdata = {
+ .caps = MMC_MODE_4BIT,
+ .voltages = MMC_VDD_32_33 | MMC_VDD_33_34, /* fixed to 3.3 V */
+};
+
+static const uint32_t pad_setup[] = {
+ /* SD card interface */
+ SSP1_DATA0 | PULLUP(1),
+ SSP1_DATA1 | PULLUP(1),
+ SSP1_DATA2 | PULLUP(1),
+ SSP1_DATA3 | PULLUP(1),
+ SSP1_SCK,
+ SSP1_CMD | PULLUP(1),
+ SSP1_DETECT | PULLUP(1),
+};
static int mx23_evk_mem_init(void)
{
@@ -35,9 +55,20 @@ mem_initcall(mx23_evk_mem_init);
static int mx23_evk_devices_init(void)
{
+ int i;
+
+ /* initizalize gpios */
+ for (i = 0; i < ARRAY_SIZE(pad_setup); i++)
+ imx_gpio_mode(pad_setup[i]);
+
armlinux_set_bootparams((void*)IMX_MEMORY_BASE + 0x100);
armlinux_set_architecture(MACH_TYPE_MX23EVK);
+ imx_set_ioclk(480000000); /* enable IOCLK to run at the PLL frequency */
+ imx_set_sspclk(0, 100000000, 1);
+ add_generic_device("mxs_mci", 0, NULL, IMX_SSP1_BASE, 0,
+ IORESOURCE_MEM, &mci_pdata);
+
return 0;
}
--
1.7.7.3
More information about the barebox
mailing list