aboutsummaryrefslogtreecommitdiffstats
path: root/include/asm-mips
diff options
context:
space:
mode:
authorManuel Lauss <mano@roarinelk.homelinux.net>2008-06-09 08:36:13 +0200
committerPierre Ossman <drzeus@drzeus.cx>2008-07-15 14:14:43 +0200
commitc4223c2c91fa9e5addd6eadd804e57a925ac5e5e (patch)
treed64af7e2b6322d59f1081ff8562cfc5f51f7f974 /include/asm-mips
parent12bd257532708a4d5be4b8548ff121a45ff88f5d (diff)
downloadkernel_samsung_crespo-c4223c2c91fa9e5addd6eadd804e57a925ac5e5e.zip
kernel_samsung_crespo-c4223c2c91fa9e5addd6eadd804e57a925ac5e5e.tar.gz
kernel_samsung_crespo-c4223c2c91fa9e5addd6eadd804e57a925ac5e5e.tar.bz2
au1xmmc: remove db1200 board code, rewrite probe.
Remove the DB1200 board-specific functions (card present, read-only, activity LED methods) and instead add platform data which is passed to the driver. This also allows for platforms to implement other carddetect schemes (e.g. dedicated irq) without having to pollute the driver code. The poll timer (used for pb1200) is kept for compatibility. With the board-specific stuff gone, the driver's ->probe() code can be cleaned up considerably. Signed-off-by: Manuel Lauss <mano@roarinelk.homelinux.net> Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
Diffstat (limited to 'include/asm-mips')
-rw-r--r--include/asm-mips/mach-au1x00/au1100_mmc.h18
1 files changed, 9 insertions, 9 deletions
diff --git a/include/asm-mips/mach-au1x00/au1100_mmc.h b/include/asm-mips/mach-au1x00/au1100_mmc.h
index 9e0028f..c35e209 100644
--- a/include/asm-mips/mach-au1x00/au1100_mmc.h
+++ b/include/asm-mips/mach-au1x00/au1100_mmc.h
@@ -38,15 +38,15 @@
#ifndef __ASM_AU1100_MMC_H
#define __ASM_AU1100_MMC_H
-
-#define NUM_AU1100_MMC_CONTROLLERS 2
-
-#if defined(CONFIG_SOC_AU1100)
-#define AU1100_SD_IRQ AU1100_SD_INT
-#elif defined(CONFIG_SOC_AU1200)
-#define AU1100_SD_IRQ AU1200_SD_INT
-#endif
-
+#include <linux/leds.h>
+
+struct au1xmmc_platform_data {
+ int(*cd_setup)(void *mmc_host, int on);
+ int(*card_inserted)(void *mmc_host);
+ int(*card_readonly)(void *mmc_host);
+ void(*set_power)(void *mmc_host, int state);
+ struct led_classdev *led;
+};
#define SD0_BASE 0xB0600000
#define SD1_BASE 0xB0680000