From c3921020050e5a2d4c09cc3709ac1e192e399b69 Mon Sep 17 00:00:00 2001 From: Ulf Hansson Date: Fri, 24 Feb 2012 15:37:27 +0100 Subject: mmc: mmci: Fixup post error handling for dma The next pointers for the next dma job needs to be reset when an error occurs. Change-Id: Ieae63ccb97b11c0f6edb7b383c84259082b83760 Signed-off-by: Ulf Hansson Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/50454 Reviewed-by: Per FORLIN Reviewed-by: QABUILD --- drivers/mmc/host/mmci.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/drivers/mmc/host/mmci.c b/drivers/mmc/host/mmci.c index 501227da03e..1dc8d379e4d 100644 --- a/drivers/mmc/host/mmci.c +++ b/drivers/mmc/host/mmci.c @@ -608,12 +608,16 @@ static void mmci_post_request(struct mmc_host *mmc, struct mmc_request *mrq, mmci_dma_unmap(host, data); if (err) { + struct mmci_host_next *next = &host->next_data; struct dma_chan *chan; if (data->flags & MMC_DATA_READ) chan = host->dma_rx_channel; else chan = host->dma_tx_channel; dmaengine_terminate_all(chan); + + next->dma_desc = NULL; + next->dma_chan = NULL; } } -- cgit v1.2.3