aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-mx5/board-mx53_ard.c
diff options
context:
space:
mode:
authorAndre Silva <andre.silva@freescale.com>2011-06-13 13:31:57 -0400
committerSascha Hauer <s.hauer@pengutronix.de>2011-07-07 04:01:08 -0400
commite3a58be3be7f0d7cf3c0966f3f3369acfab421e8 (patch)
tree7e1e3c1b5a505ef19f552485957c5262f3573642 /arch/arm/mach-mx5/board-mx53_ard.c
parent6ecdc11bf8e1105ae393bf74026427180a6c5207 (diff)
ARM:mach-mx5/mx53_ard: Add ESDHC support
Signed-off-by: Andre Silva <andre.silva@freescale.com> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'arch/arm/mach-mx5/board-mx53_ard.c')
-rw-r--r--arch/arm/mach-mx5/board-mx53_ard.c22
1 files changed, 22 insertions, 0 deletions
diff --git a/arch/arm/mach-mx5/board-mx53_ard.c b/arch/arm/mach-mx5/board-mx53_ard.c
index 7e1859ba5f83..5d98dbfdfab5 100644
--- a/arch/arm/mach-mx5/board-mx53_ard.c
+++ b/arch/arm/mach-mx5/board-mx53_ard.c
@@ -36,6 +36,8 @@
36#include "devices-imx53.h" 36#include "devices-imx53.h"
37 37
38#define ARD_ETHERNET_INT_B IMX_GPIO_NR(2, 31) 38#define ARD_ETHERNET_INT_B IMX_GPIO_NR(2, 31)
39#define ARD_SD1_CD IMX_GPIO_NR(1, 1)
40#define ARD_SD1_WP IMX_GPIO_NR(1, 9)
39 41
40static iomux_v3_cfg_t mx53_ard_pads[] = { 42static iomux_v3_cfg_t mx53_ard_pads[] = {
41 /* UART1 */ 43 /* UART1 */
@@ -69,6 +71,19 @@ static iomux_v3_cfg_t mx53_ard_pads[] = {
69 MX53_PAD_EIM_OE__EMI_WEIM_OE, 71 MX53_PAD_EIM_OE__EMI_WEIM_OE,
70 MX53_PAD_EIM_RW__EMI_WEIM_RW, 72 MX53_PAD_EIM_RW__EMI_WEIM_RW,
71 MX53_PAD_EIM_CS1__EMI_WEIM_CS_1, 73 MX53_PAD_EIM_CS1__EMI_WEIM_CS_1,
74 /* SDHC1 */
75 MX53_PAD_SD1_CMD__ESDHC1_CMD,
76 MX53_PAD_SD1_CLK__ESDHC1_CLK,
77 MX53_PAD_SD1_DATA0__ESDHC1_DAT0,
78 MX53_PAD_SD1_DATA1__ESDHC1_DAT1,
79 MX53_PAD_SD1_DATA2__ESDHC1_DAT2,
80 MX53_PAD_SD1_DATA3__ESDHC1_DAT3,
81 MX53_PAD_PATA_DATA8__ESDHC1_DAT4,
82 MX53_PAD_PATA_DATA9__ESDHC1_DAT5,
83 MX53_PAD_PATA_DATA10__ESDHC1_DAT6,
84 MX53_PAD_PATA_DATA11__ESDHC1_DAT7,
85 MX53_PAD_GPIO_1__GPIO1_1,
86 MX53_PAD_GPIO_9__GPIO1_9,
72}; 87};
73 88
74static struct resource ard_smsc911x_resources[] = { 89static struct resource ard_smsc911x_resources[] = {
@@ -100,6 +115,11 @@ static struct platform_device ard_smsc_lan9220_device = {
100 }, 115 },
101}; 116};
102 117
118static const struct esdhc_platform_data mx53_ard_sd1_data __initconst = {
119 .cd_gpio = ARD_SD1_CD,
120 .wp_gpio = ARD_SD1_WP,
121};
122
103static void __init mx53_ard_io_init(void) 123static void __init mx53_ard_io_init(void)
104{ 124{
105 mxc_iomux_v3_setup_multiple_pads(mx53_ard_pads, 125 mxc_iomux_v3_setup_multiple_pads(mx53_ard_pads,
@@ -156,6 +176,8 @@ static void __init mx53_ard_board_init(void)
156 mx53_ard_io_init(); 176 mx53_ard_io_init();
157 weim_cs_config(); 177 weim_cs_config();
158 platform_add_devices(devices, ARRAY_SIZE(devices)); 178 platform_add_devices(devices, ARRAY_SIZE(devices));
179
180 imx53_add_sdhci_esdhc_imx(0, &mx53_ard_sd1_data);
159} 181}
160 182
161static void __init mx53_ard_timer_init(void) 183static void __init mx53_ard_timer_init(void)