aboutsummaryrefslogtreecommitdiffstats
path: root/include/asm-arm
diff options
context:
space:
mode:
authorPavel Pisa <ppisa@pikron.com>2006-04-02 19:27:07 +0100
committerRussell King <rmk+kernel@arm.linux.org.uk>2006-04-02 19:27:07 +0100
commit56ca904053ab14ba4067a72b69a5edf246771209 (patch)
tree23dc10e74bb4ce3d2a2ce5a9d8da1c5f5feda94d /include/asm-arm
parent65dbf34393f7b3d20e993d9651a825df0fa5376b (diff)
downloadkernel_samsung_crespo-56ca904053ab14ba4067a72b69a5edf246771209.zip
kernel_samsung_crespo-56ca904053ab14ba4067a72b69a5edf246771209.tar.gz
kernel_samsung_crespo-56ca904053ab14ba4067a72b69a5edf246771209.tar.bz2
[ARM] 3457/1: i.MX: SD/MMC support for i.MX/MX1
Patch from Pavel Pisa This patch adds support of i.MX/MX1 SD/MMC controller. It has been significantly redesigned from the original Sascha Hauer's version to support scatter-gather DMA, to conform to latest Pierre Ossman's and Russell King's MMC-SD Linux 2.6.x infrastructure. The handling of all events has been moved to the softirq context and is designed with no busy-looping in mind. Unfortunately some controller bugs has to be overcome by limited looping about 2-20 usec but these are observed only for initial card recognition phase. There are still some missing/missed IRQs problems under heavy load. Help of somebody with access to the full SDHC design information is probably necessary. Regenerated against 2.6.16-git-060402 to solve clash with other patches. Signed-off-by: Pavel Pisa <pisa@cmp.felk.cvut.cz> Acked-by: Sascha Hauer <s.hauer@pengutronix.de> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'include/asm-arm')
-rw-r--r--include/asm-arm/arch-imx/mmc.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/include/asm-arm/arch-imx/mmc.h b/include/asm-arm/arch-imx/mmc.h
new file mode 100644
index 0000000..1937151
--- /dev/null
+++ b/include/asm-arm/arch-imx/mmc.h
@@ -0,0 +1,12 @@
+#ifndef ASMARM_ARCH_MMC_H
+#define ASMARM_ARCH_MMC_H
+
+#include <linux/mmc/protocol.h>
+
+struct imxmmc_platform_data {
+ int (*card_present)(void);
+};
+
+extern void imx_set_mmc_info(struct imxmmc_platform_data *info);
+
+#endif