Commit d66e35fa authored by Pavel Pisa's avatar Pavel Pisa Committed by Russell King

[ARM] 3446/1: i.MX: MMC/SD SDHC controller registration for i.MX/MX1 MX1ADS board

Patch from Pavel Pisa

From: Stefano Fedrigo <aleph@develer.com>

This adds to the MX1ADS platform the needed code to detect
insertion/removal of an MMC/SD card.  Tested on a v1.1 board.
Signed-off-by: default avatarStefano Fedrigo <aleph@develer.com>
Signed-off-by: default avatarPavel Pisa <pisa@cmp.felk.cvut.cz>
Acked-by: default avatarSascha Hauer <s.hauer@pengutronix.de>
Signed-off-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
parent 999331af
...@@ -25,6 +25,7 @@ ...@@ -25,6 +25,7 @@
#include <asm/mach-types.h> #include <asm/mach-types.h>
#include <asm/mach/arch.h> #include <asm/mach/arch.h>
#include <asm/arch/mmc.h>
#include <linux/interrupt.h> #include <linux/interrupt.h>
#include "generic.h" #include "generic.h"
...@@ -51,11 +52,28 @@ static struct platform_device *devices[] __initdata = { ...@@ -51,11 +52,28 @@ static struct platform_device *devices[] __initdata = {
&cs89x0_device, &cs89x0_device,
}; };
#ifdef CONFIG_MMC_IMX
static int mx1ads_mmc_card_present(void)
{
/* MMC/SD Card Detect is PB 20 on MX1ADS V1.0.7 */
return (SSR(1) & (1 << 20) ? 0 : 1);
}
static struct imxmmc_platform_data mx1ads_mmc_info = {
.card_present = mx1ads_mmc_card_present,
};
#endif
static void __init static void __init
mx1ads_init(void) mx1ads_init(void)
{ {
#ifdef CONFIG_LEDS #ifdef CONFIG_LEDS
imx_gpio_mode(GPIO_PORTA | GPIO_OUT | 2); imx_gpio_mode(GPIO_PORTA | GPIO_OUT | 2);
#endif
#ifdef CONFIG_MMC_IMX
/* SD/MMC card detect */
imx_gpio_mode(GPIO_PORTB | GPIO_GIUS | GPIO_IN | 20);
imx_set_mmc_info(&mx1ads_mmc_info);
#endif #endif
platform_add_devices(devices, ARRAY_SIZE(devices)); platform_add_devices(devices, ARRAY_SIZE(devices));
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment