diff --git a/drivers/mmc/host/at91_mci.c b/drivers/mmc/host/at91_mci.c
index f8c3f7c330e32d38d13ebbe2f049fe3840cbde1c..16df235fcc2e15a43a19c9f8e78fe0111cc6acaf 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;