From 73623c76c8bc8c41a4afefc1eee84dfc5979d652 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Wed, 12 Jun 2019 20:45:17 +0100 Subject: [PATCH] bcm2835-sdhost: Fix DMA channel leak on error/remove Signed-off-by: Phil Elwell --- drivers/mmc/host/bcm2835-sdhost.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) --- a/drivers/mmc/host/bcm2835-sdhost.c +++ b/drivers/mmc/host/bcm2835-sdhost.c @@ -2154,6 +2154,8 @@ static int bcm2835_sdhost_probe(struct p err: pr_debug("bcm2835_sdhost_probe -> err %d\n", ret); + if (host->dma_chan_rxtx) + dma_release_channel(host->dma_chan_rxtx); mmc_free_host(mmc); return ret; @@ -2174,7 +2176,8 @@ static int bcm2835_sdhost_remove(struct del_timer_sync(&host->timer); tasklet_kill(&host->finish_tasklet); - + if (host->dma_chan_rxtx) + dma_release_channel(host->dma_chan_rxtx); mmc_free_host(host->mmc); platform_set_drvdata(pdev, NULL);