summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPierre Ossman <drzeus@drzeus.cx>2008-10-26 12:37:25 +0100
committerGreg Kroah-Hartman <gregkh@suse.de>2008-11-13 09:56:04 -0800
commit5995f4d7e9419b62432eeb3a6dfa4c164d2def7e (patch)
tree7096c84ac93b98955806a33d0b57fc4693f17eb7
parente5cac99d60ed711440aa10d134300d5180d0356f (diff)
mmc: increase SD write timeout for crappy cards
commit 493890e75d98810a3470b4aae23be628ee5e9667 upstream. It seems that some cards are slightly out of spec and occasionally will not be able to complete a write in the alloted 250 ms [1]. Incease the timeout slightly to allow even these cards to function properly. [1] http://lkml.org/lkml/2008/9/23/390 Signed-off-by: Pierre Ossman <drzeus@drzeus.cx> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-rw-r--r--drivers/mmc/core/core.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/drivers/mmc/core/core.c b/drivers/mmc/core/core.c
index 044d84eeed7c..f7284b905eb3 100644
--- a/drivers/mmc/core/core.c
+++ b/drivers/mmc/core/core.c
@@ -280,7 +280,11 @@ void mmc_set_data_timeout(struct mmc_data *data, const struct mmc_card *card)
(card->host->ios.clock / 1000);
if (data->flags & MMC_DATA_WRITE)
- limit_us = 250000;
+ /*
+ * The limit is really 250 ms, but that is
+ * insufficient for some crappy cards.
+ */
+ limit_us = 300000;
else
limit_us = 100000;