diff --git a/drivers/mci/imx-esdhc.c b/drivers/mci/imx-esdhc.c index 2937156..7595a93 100644 --- a/drivers/mci/imx-esdhc.c +++ b/drivers/mci/imx-esdhc.c @@ -257,10 +257,10 @@ 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 @@ 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 }