diff options
-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 | ||