summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCarlos Eduardo Aguiar <carlos.aguiar@indt.org.br>2007-01-15 06:38:15 +0100
committerPierre Ossman <drzeus@drzeus.cx>2007-01-15 06:39:00 +0100
commit1b3b2631842ab60c1b7923bef102c610439ba3dd (patch)
treeadb9b8f59430af3d3fd98ffa9218c5d70aed2ba4
parent0404f87f2e0a0aadbda47be0f54812671207492f (diff)
omap: Update MMC response types
This patch is a fix in order to update MMC response types. This modification is needed to allow SD card support on OMAP platforms. Signed-off-by: Carlos Eduardo Aguiar <carlos.aguiar@indt.org.br> Signed-off-by: Yuha Yrjola <juha.yrjola@solidboot.com> Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
-rw-r--r--drivers/mmc/omap.c16
1 files changed, 11 insertions, 5 deletions
diff --git a/drivers/mmc/omap.c b/drivers/mmc/omap.c
index 9488408308fb..1e5407d44dfd 100644
--- a/drivers/mmc/omap.c
+++ b/drivers/mmc/omap.c
@@ -91,7 +91,6 @@
#define DRIVER_NAME "mmci-omap"
-#define RSP_TYPE(x) ((x) & ~(MMC_RSP_BUSY|MMC_RSP_OPCODE))
/* Specifies how often in millisecs to poll for card status changes
* when the cover switch is open */
@@ -204,18 +203,25 @@ mmc_omap_start_command(struct mmc_omap_host *host, struct mmc_command *cmd)
cmdtype = 0;
/* Our hardware needs to know exact type */
- switch (RSP_TYPE(mmc_resp_type(cmd))) {
- case RSP_TYPE(MMC_RSP_R1):
+ switch (mmc_resp_type(cmd)) {
+ case MMC_RSP_NONE:
+ break;
+ case MMC_RSP_R1:
+ case MMC_RSP_R1B:
/* resp 1, resp 1b */
resptype = 1;
break;
- case RSP_TYPE(MMC_RSP_R2):
+ case MMC_RSP_R2:
resptype = 2;
break;
- case RSP_TYPE(MMC_RSP_R3):
+ case MMC_RSP_R3:
resptype = 3;
break;
+ case MMC_RSP_R6:
+ resptype = 6;
+ break;
default:
+ dev_err(mmc_dev(host->mmc), "Invalid response type: %04x\n", mmc_resp_type(cmd));
break;
}