summaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorPer Forlin <per.forlin@linaro.org>2011-08-29 15:35:59 +0200
committerChris Ball <cjb@laptop.org>2011-10-26 22:32:04 +0200
commit8e3336b1e4378f7d205af9b25dcc9e645c8a9609 (patch)
tree6cf706421307d3f512efbd51e15d2c88cd8df382 /drivers
parentmmc: core: clarify how to use post_req in case of errors (diff)
downloadlinux-8e3336b1e4378f7d205af9b25dcc9e645c8a9609.tar.xz
linux-8e3336b1e4378f7d205af9b25dcc9e645c8a9609.zip
mmc: mmci: simplify err check in mmci_post_request
The error condition indicates that mmci_post_request() should cleanup after the mmci_pre_request(). In this case the resources allocated by device_prep_slave_sg() are freed by calling dmaengine_terminate_all(). dma_unmap_sg() should always be performed if the host_cookie is set. Signed-off-by: Per Forlin <per.forlin@linaro.org> Acked-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Chris Ball <cjb@laptop.org>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/mmc/host/mmci.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/mmc/host/mmci.c b/drivers/mmc/host/mmci.c
index 56e9a4168264..40e4c055812e 100644
--- a/drivers/mmc/host/mmci.c
+++ b/drivers/mmc/host/mmci.c
@@ -529,7 +529,7 @@ static void mmci_post_request(struct mmc_host *mmc, struct mmc_request *mrq,
if (chan) {
if (err)
dmaengine_terminate_all(chan);
- if (err || data->host_cookie)
+ if (data->host_cookie)
dma_unmap_sg(mmc_dev(host->mmc), data->sg,
data->sg_len, dir);
mrq->data->host_cookie = 0;