tmio_mmc: Use 100ms mmc_detect_change() delay
Magnus Damm [Wed, 17 Feb 2010 07:38:04 +0000 (16:38 +0900)]
This patch changes the tmio_mmc driver to wait 100ms
before checking the card detect status. This type of
delay is quite common among mmc drivers, it seems that
most hardware platforms need to give the hardware some
time to settle before checking card availabilty.

Hotplug is half-broken without this patch on the sh7724
Ecovec board. Hot insertion seems ok but eject is never
detected without this patch.

Signed-off-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>

drivers/mmc/host/tmio_mmc.c

index e2c0cc9..7b2376d 100644 (file)
@@ -323,7 +323,7 @@ static irqreturn_t tmio_mmc_irq(int irq, void *devid)
                if (ireg & (TMIO_STAT_CARD_INSERT | TMIO_STAT_CARD_REMOVE)) {
                        ack_mmc_irqs(host, TMIO_STAT_CARD_INSERT |
                                TMIO_STAT_CARD_REMOVE);
-                       mmc_detect_change(host->mmc, 0);
+                       mmc_detect_change(host->mmc, msecs_to_jiffies(100));
                }
 
                /* CRC and other errors */