diff options
author | Sascha Hauer <s.hauer@pengutronix.de> | 2011-07-04 17:17:14 +0200 |
---|---|---|
committer | Sascha Hauer <s.hauer@pengutronix.de> | 2011-07-05 09:32:19 +0200 |
commit | 26daaaa7302e790fdd5cc4a012c384925396da46 (patch) | |
tree | c86bba5283edc3258099fde4fa212b629b41fa09 | |
parent | fa8aa1771027718747e76bc3e3008c1840cf3b19 (diff) | |
download | barebox-26daaaa7302e790fdd5cc4a012c384925396da46.tar.gz barebox-26daaaa7302e790fdd5cc4a012c384925396da46.tar.xz |
MCI imx-esdhc: Fix cache flush/inval for multi block support
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
-rw-r--r-- | drivers/mci/imx-esdhc.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/mci/imx-esdhc.c b/drivers/mci/imx-esdhc.c index 29371567be..7595a9323c 100644 --- a/drivers/mci/imx-esdhc.c +++ b/drivers/mci/imx-esdhc.c @@ -257,10 +257,10 @@ esdhc_send_cmd(struct mci_host *mci, struct mci_cmd *cmd, struct mci_data *data) return err; if (data->flags & MMC_DATA_WRITE) { dma_flush_range((unsigned long)data->src, - (unsigned long)(data->src + 512)); + (unsigned long)(data->src + data->blocks * 512)); } else dma_clean_range((unsigned long)data->src, - (unsigned long)(data->src + 512)); + (unsigned long)(data->src + data->blocks * 512)); } @@ -317,7 +317,7 @@ esdhc_send_cmd(struct mci_host *mci, struct mci_cmd *cmd, struct mci_data *data) if (data->flags & MMC_DATA_READ) { dma_inv_range((unsigned long)data->dest, - (unsigned long)(data->dest + 512)); + (unsigned long)(data->dest + data->blocks * 512)); } #endif } |