summaryrefslogtreecommitdiffstats
path: root/drivers/mmc/host/at91_mci.c
diff options
context:
space:
mode:
authorVille Syrjala <syrjala@sci.fi>2008-06-09 21:06:45 +0200
committerPierre Ossman <drzeus@drzeus.cx>2008-07-15 14:14:43 +0200
commit12bd257532708a4d5be4b8548ff121a45ff88f5d (patch)
treef1a8b6ce9775cf995eeeff1c9b8d736cb7e34b56 /drivers/mmc/host/at91_mci.c
parentat91_mci: Cover more AT91RM9200 and AT91SAM9261 errata. (diff)
downloadlinux-12bd257532708a4d5be4b8548ff121a45ff88f5d.tar.xz
linux-12bd257532708a4d5be4b8548ff121a45ff88f5d.zip
at91_mci: Fix byte mode transitions.
The byte mode support fails to clear the byte mode bit in the command register, possibly leaving byte mode enabled with the counters programmed in non-byte mode. Signed-off-by: Ville Syrjala <syrjala@sci.fi> Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com> Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
Diffstat (limited to 'drivers/mmc/host/at91_mci.c')
-rw-r--r--drivers/mmc/host/at91_mci.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/mmc/host/at91_mci.c b/drivers/mmc/host/at91_mci.c
index f8c3f7c330e3..16df235fcc2e 100644
--- a/drivers/mmc/host/at91_mci.c
+++ b/drivers/mmc/host/at91_mci.c
@@ -579,7 +579,7 @@ static void at91_mci_send_command(struct at91mci_host *host, struct mmc_command
ier = AT91_MCI_CMDRDY;
} else {
/* zero block length and PDC mode */
- mr = at91_mci_read(host, AT91_MCI_MR) & 0x7fff;
+ mr = at91_mci_read(host, AT91_MCI_MR) & 0x5fff;
mr |= (data->blksz & 0x3) ? AT91_MCI_PDCFBYTE : 0;
mr |= (block_length << 16);
mr |= AT91_MCI_PDCMODE;