diff options
author | Russell King <rmk+kernel@arm.linux.org.uk> | 2011-01-27 04:46:29 -0500 |
---|---|---|
committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2011-02-04 08:25:47 -0500 |
commit | 7d7aa23cf0700f4025cb61bd1ac517ccf79bd460 (patch) | |
tree | cffbfda462ba6841b3adadf5ef82c749b1f625e3 /drivers/mmc/host/mmci.c | |
parent | c8afc9d59ce1100d3f7704e86fda5a25361c45bf (diff) |
ARM: mmci: no need to call flush_dcache_page() with sg_miter API
The sg_miter API provides the required cache maintainence, so we don't
need to do that ourselves. Remove the unnecessary additional cache
maintainence.
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'drivers/mmc/host/mmci.c')
-rw-r--r-- | drivers/mmc/host/mmci.c | 19 |
1 files changed, 0 insertions, 19 deletions
diff --git a/drivers/mmc/host/mmci.c b/drivers/mmc/host/mmci.c index d7b83a8b3534..2563792c01d0 100644 --- a/drivers/mmc/host/mmci.c +++ b/drivers/mmc/host/mmci.c | |||
@@ -311,22 +311,6 @@ mmci_data_irq(struct mmci_host *host, struct mmc_data *data, | |||
311 | data->error = -EIO; | 311 | data->error = -EIO; |
312 | } | 312 | } |
313 | host->data_xfered = round_down(success, data->blksz); | 313 | host->data_xfered = round_down(success, data->blksz); |
314 | |||
315 | /* | ||
316 | * We hit an error condition. Ensure that any data | ||
317 | * partially written to a page is properly coherent. | ||
318 | */ | ||
319 | if (data->flags & MMC_DATA_READ) { | ||
320 | struct sg_mapping_iter *sg_miter = &host->sg_miter; | ||
321 | unsigned long flags; | ||
322 | |||
323 | local_irq_save(flags); | ||
324 | if (sg_miter_next(sg_miter)) { | ||
325 | flush_dcache_page(sg_miter->page); | ||
326 | sg_miter_stop(sg_miter); | ||
327 | } | ||
328 | local_irq_restore(flags); | ||
329 | } | ||
330 | } | 314 | } |
331 | 315 | ||
332 | if (status & MCI_DATABLOCKEND) | 316 | if (status & MCI_DATABLOCKEND) |
@@ -510,9 +494,6 @@ static irqreturn_t mmci_pio_irq(int irq, void *dev_id) | |||
510 | if (remain) | 494 | if (remain) |
511 | break; | 495 | break; |
512 | 496 | ||
513 | if (status & MCI_RXACTIVE) | ||
514 | flush_dcache_page(sg_miter->page); | ||
515 | |||
516 | status = readl(base + MMCISTATUS); | 497 | status = readl(base + MMCISTATUS); |
517 | } while (1); | 498 | } while (1); |
518 | 499 | ||