9
0
Fork 0

mci: pxamci fix CMD12 handling

The pxamci requires a bit to be set in the command control
register when a CMD12 is sent. Set it, as required in the
PXA Developer Manuel, chapter "Stop Data Transmission
Command (CMD12 or IO/Abort with CMD52)".

Signed-off-by: Robert Jarzmik <robert.jarzmik@free.fr>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
This commit is contained in:
Robert Jarzmik 2012-04-16 21:47:16 +02:00 committed by Sascha Hauer
parent 0f0d40217f
commit b1109600d4
2 changed files with 4 additions and 0 deletions

View File

@ -188,6 +188,9 @@ static void pxamci_start_cmd(struct pxamci_host *host, struct mci_cmd *cmd,
break;
}
if (cmd->cmdidx == MMC_CMD_STOP_TRANSMISSION)
cmdat |= CMDAT_STOP_TRAN;
mmc_writel(cmd->cmdidx, MMC_CMD);
mmc_writel(cmd->cmdarg >> 16, MMC_ARGH);
mmc_writel(cmd->cmdarg & 0xffff, MMC_ARGL);

View File

@ -40,6 +40,7 @@
#define MMC_CMDAT 0x0010
#define CMDAT_SDIO_INT_EN (1 << 11)
#define CMDAT_STOP_TRAN (1 << 10)
#define CMDAT_SD_4DAT (1 << 8)
#define CMDAT_DMAEN (1 << 7)
#define CMDAT_INIT (1 << 6)