summaryrefslogtreecommitdiffstats
path: root/drivers/mmc/host/dw_mmc.c
diff options
context:
space:
mode:
authorWill Newton2011-02-10 20:37:03 +0100
committerChris Ball2011-03-15 18:48:51 +0100
commitdd6c4b9807581b37bf68ba3cd160c6859f070d39 (patch)
treed60dac551123658b8190de2ba10c3e2fdd2e83c2 /drivers/mmc/host/dw_mmc.c
parentmmc: mmc_mxc: Allow selection only for the correct platforms (diff)
downloadkernel-qcow2-linux-dd6c4b9807581b37bf68ba3cd160c6859f070d39.tar.gz
kernel-qcow2-linux-dd6c4b9807581b37bf68ba3cd160c6859f070d39.tar.xz
kernel-qcow2-linux-dd6c4b9807581b37bf68ba3cd160c6859f070d39.zip
mmc: dw_mmc: Run card detect tasklet during slot initialisation.
We need to run the card detect tasklet at the end of slot initialisation as it is possible that a card has been inserted prior to boot, so we don't see an insertion interrupt and now the card is sitting there inserted but with no power to it. Signed-off-by: Neil Jones <neil.jones@imgtec.com> Signed-off-by: Will Newton <will.newton@imgtec.com> Reviewed-by: Matt Fleming <matt@console-pimps.org> Signed-off-by: Chris Ball <cjb@laptop.org>
Diffstat (limited to 'drivers/mmc/host/dw_mmc.c')
-rw-r--r--drivers/mmc/host/dw_mmc.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/mmc/host/dw_mmc.c b/drivers/mmc/host/dw_mmc.c
index 2fcc82577c1b..c01cb8642fb5 100644
--- a/drivers/mmc/host/dw_mmc.c
+++ b/drivers/mmc/host/dw_mmc.c
@@ -1441,6 +1441,12 @@ static int __init dw_mci_init_slot(struct dw_mci *host, unsigned int id)
/* Card initially undetected */
slot->last_detect_state = 0;
+ /*
+ * Card may have been plugged in prior to boot so we
+ * need to run the detect tasklet
+ */
+ tasklet_schedule(&host->card_tasklet);
+
return 0;
}