From: Wolfgang Muees Date: Wed, 11 Mar 2009 13:17:43 +0000 (+0100) Subject: mmc_spi: wait more bytes for card response X-Git-Tag: v2.6.30-rc1~209^2~29 X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=ea15ba5cd7bb370902cd9f6a73c2d288bfba6b2c;p=karo-tx-linux.git mmc_spi: wait more bytes for card response Some cards are slower than the standard allows and need more time to respond to a command. Max. observed number of bytes was 12. Signed-off-by: Wolfgang Muees Acked-by: David Brownell Signed-off-by: Pierre Ossman --- diff --git a/drivers/mmc/host/mmc_spi.c b/drivers/mmc/host/mmc_spi.c index ad9e0e213f64..69e1442ff2e2 100644 --- a/drivers/mmc/host/mmc_spi.c +++ b/drivers/mmc/host/mmc_spi.c @@ -279,8 +279,11 @@ static int mmc_spi_response_get(struct mmc_spi_host *host, * so it can always DMA directly into the target buffer. * It'd probably be better to memcpy() the first chunk and * avoid extra i/o calls... + * + * Note we check for more than 8 bytes, because in practice, + * some SD cards are slow... */ - for (i = 2; i < 9; i++) { + for (i = 2; i < 16; i++) { value = mmc_spi_readbytes(host, 1); if (value < 0) goto done;