Gitweb:     
http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=90e07d9f54c61449dd48eff82e2354d0124d4f7e
Commit:     90e07d9f54c61449dd48eff82e2354d0124d4f7e
Parent:     fe6b4c8840c5e23fe9b8696450cee8f2e8cebffd
Author:     Nicolas Pitre <[EMAIL PROTECTED]>
AuthorDate: Sun May 13 18:03:08 2007 +0200
Committer:  Pierre Ossman <[EMAIL PROTECTED]>
CommitDate: Mon May 14 18:51:48 2007 +0200

    pxamci: fix PXA27x MMC workaround for bad CRC with 136 bit response
    
    ... and make it depend on the response flag instead of the command type.
    
    Signed-off-by: Nicolas Pitre <[EMAIL PROTECTED]>
    Signed-off-by: Pierre Ossman <[EMAIL PROTECTED]>
---
 drivers/mmc/host/pxamci.c |   18 ++++++------------
 1 files changed, 6 insertions(+), 12 deletions(-)

diff --git a/drivers/mmc/host/pxamci.c b/drivers/mmc/host/pxamci.c
index d97d386..f8985c5 100644
--- a/drivers/mmc/host/pxamci.c
+++ b/drivers/mmc/host/pxamci.c
@@ -232,20 +232,14 @@ static int pxamci_cmd_done(struct pxamci_host *host, 
unsigned int stat)
                /*
                 * workaround for erratum #42:
                 * Intel PXA27x Family Processor Specification Update Rev 001
+                * A bogus CRC error can appear if the msb of a 136 bit
+                * response is a one.
                 */
-               if (cmd->opcode == MMC_ALL_SEND_CID ||
-                   cmd->opcode == MMC_SEND_CSD ||
-                   cmd->opcode == MMC_SEND_CID) {
-                       /* a bogus CRC error can appear if the msb of
-                          the 15 byte response is a one */
-                       if ((cmd->resp[0] & 0x80000000) == 0)
-                               cmd->error = MMC_ERR_BADCRC;
-               } else {
-                       pr_debug("ignoring CRC from command %d - 
*risky*\n",cmd->opcode);
-               }
-#else
-               cmd->error = MMC_ERR_BADCRC;
+               if (cmd->flags & MMC_RSP_136 && cmd->resp[0] & 0x80000000) {
+                       pr_debug("ignoring CRC from command %d - *risky*\n", 
cmd->opcode);
+               } else
 #endif
+               cmd->error = MMC_ERR_BADCRC;
        }
 
        pxamci_disable_irq(host, END_CMD_RES);
-
To unsubscribe from this list: send the line "unsubscribe git-commits-head" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to