diff options
| -rw-r--r-- | drivers/mmc/core/core.c | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/drivers/mmc/core/core.c b/drivers/mmc/core/core.c index 14f262e9246d..7474c47b9c08 100644 --- a/drivers/mmc/core/core.c +++ b/drivers/mmc/core/core.c | |||
| @@ -527,10 +527,14 @@ void mmc_set_data_timeout(struct mmc_data *data, const struct mmc_card *card) | |||
| 527 | 527 | ||
| 528 | if (data->flags & MMC_DATA_WRITE) | 528 | if (data->flags & MMC_DATA_WRITE) |
| 529 | /* | 529 | /* |
| 530 | * The limit is really 250 ms, but that is | 530 | * The MMC spec "It is strongly recommended |
| 531 | * insufficient for some crappy cards. | 531 | * for hosts to implement more than 500ms |
| 532 | * timeout value even if the card indicates | ||
| 533 | * the 250ms maximum busy length." Even the | ||
| 534 | * previous value of 300ms is known to be | ||
| 535 | * insufficient for some cards. | ||
| 532 | */ | 536 | */ |
| 533 | limit_us = 300000; | 537 | limit_us = 3000000; |
| 534 | else | 538 | else |
| 535 | limit_us = 100000; | 539 | limit_us = 100000; |
| 536 | 540 | ||
