summaryrefslogtreecommitdiff
path: root/drivers/mmc
diff options
context:
space:
mode:
authorPedro Perez de Heredia <pedro.perez@digi.com>2010-05-01 12:09:40 +0200
committerPedro Perez de Heredia <pedro.perez@digi.com>2010-05-01 12:09:40 +0200
commit64023d524087c947f537e6ff0aa1d208ccd326bc (patch)
treed67d35950bce1d6e0e92d8a80a5a1ced14f635cc /drivers/mmc
parent249162d595e0b91e5c3b4a03e4498c16b07da331 (diff)
ganges_driver: avoid disabling clock on SDIO2 (wireless interface)
This commit skips the code that disables the clock on the SDIO interface, for the ConnectCore Wi-i.MX51. This was causing that we were losing interrupts on the SDIO interface where the wireless module is attached. Signed-off-by: Pedro Perez de Heredia <pedro.perez@digi.com>
Diffstat (limited to 'drivers/mmc')
-rw-r--r--drivers/mmc/host/mx_sdhci.c11
1 files changed, 10 insertions, 1 deletions
diff --git a/drivers/mmc/host/mx_sdhci.c b/drivers/mmc/host/mx_sdhci.c
index 4bc3b32bc730..f79fab00120b 100644
--- a/drivers/mmc/host/mx_sdhci.c
+++ b/drivers/mmc/host/mx_sdhci.c
@@ -1184,6 +1184,16 @@ static void sdhci_tasklet_finish(unsigned long param)
spin_unlock_irqrestore(&host->lock, flags);
/* Stop the clock when the req is done */
+ if (machine_is_ccwmx51js() || machine_is_ccwmx51()) {
+ /**
+ * On the ConnectCore Wi-i.MX51 this, disabling there clock
+ * causes that we lose interrupts on the wireless SDIO cards
+ * For that reason, we dont disable the clock on this platform
+ */
+ mmc_request_done(host->mmc, mrq);
+ return;
+ }
+
flags = SDHCI_DATA_ACTIVE | SDHCI_DOING_WRITE | SDHCI_DOING_READ;
if (machine_is_mx35_3ds()) {
/* Do not disable the eSDHC clk on MX35 3DS board,
@@ -1203,7 +1213,6 @@ static void sdhci_tasklet_finish(unsigned long param)
mmc_request_done(host->mmc, mrq);
}
-
}
static void sdhci_timeout_timer(unsigned long data)