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>
This commit is contained in:
committed by
Pierre Ossman
parent
9da3cbaf28
commit
12bd257532
@@ -579,7 +579,7 @@ static void at91_mci_send_command(struct at91mci_host *host, struct mmc_command
|
|||||||
ier = AT91_MCI_CMDRDY;
|
ier = AT91_MCI_CMDRDY;
|
||||||
} else {
|
} else {
|
||||||
/* zero block length and PDC mode */
|
/* 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 |= (data->blksz & 0x3) ? AT91_MCI_PDCFBYTE : 0;
|
||||||
mr |= (block_length << 16);
|
mr |= (block_length << 16);
|
||||||
mr |= AT91_MCI_PDCMODE;
|
mr |= AT91_MCI_PDCMODE;
|
||||||
|
Reference in New Issue
Block a user