---
 drivers/mmc/s3cmci.c |   11 	6 +	5 -	0 !
 1 file changed, 6 insertions(+), 5 deletions(-)

Index: linux-2.6/drivers/mmc/s3cmci.c
===================================================================
--- linux-2.6.orig/drivers/mmc/s3cmci.c	2007-01-20 15:35:05.000000000 +0100
+++ linux-2.6/drivers/mmc/s3cmci.c	2007-01-20 16:40:39.000000000 +0100
@@ -55,7 +55,7 @@ static const int dbgmap_debug = dbg_debu
 #define RESSIZE(ressource) (((ressource)->end - (ressource)->start)+1)
 
 static struct s3c2410_dma_client s3cmci_dma_client = {
-	.name		= "s3c-mci",
+	.name		= DRIVER_NAME,
 };
 
 static void finalize_request(struct s3cmci_host *host);
@@ -445,11 +445,12 @@ static irqreturn_t s3cmci_irq(int irq, v
 
 	if (mci_csta & S3C2410_SDICMDSTAT_CRCFAIL) {
 		if (cmd->flags & MMC_RSP_CRC) {
-			cmd->error = MMC_ERR_BADCRC;
-			host->status = "error: bad command crc";
-			goto fail_transfer;
+			if (host->is2440 || !(cmd->flags & MMC_RSP_136)) {
+				cmd->error = MMC_ERR_BADCRC;
+				host->status = "error: bad command crc";
+				goto fail_transfer;
+			}
 		}
-
 		mci_cclear |= S3C2410_SDICMDSTAT_CRCFAIL;
 	}
 
