diff options
author | Andy Shevchenko <andriy.shevchenko@linux.intel.com> | 2014-09-12 15:11:58 +0300 |
---|---|---|
committer | Mark Brown <broonie@kernel.org> | 2014-09-13 17:01:57 +0100 |
commit | fb57862ead652454ceeb659617404c5f13bc34b5 (patch) | |
tree | fbb408839ae0cd552828a8b29fa5ec4cf625558a /drivers/spi/spi-dw-mid.c | |
parent | 05ed2aee3e97c9cfb737388706b439264e27eb0c (diff) | |
download | linux-stable-fb57862ead652454ceeb659617404c5f13bc34b5.tar.gz linux-stable-fb57862ead652454ceeb659617404c5f13bc34b5.tar.bz2 linux-stable-fb57862ead652454ceeb659617404c5f13bc34b5.zip |
spi: dw-mid: check that DMA was inited before exit
If the driver was compiled with DMA support, but DMA channels weren't acquired
by some reason, mid_spi_dma_exit() will crash the kernel.
Fixes: 7063c0d942a1 (spi/dw_spi: add DMA support)
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'drivers/spi/spi-dw-mid.c')
-rw-r--r-- | drivers/spi/spi-dw-mid.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/spi/spi-dw-mid.c b/drivers/spi/spi-dw-mid.c index 6d207afec8cb..0d88e4aab73e 100644 --- a/drivers/spi/spi-dw-mid.c +++ b/drivers/spi/spi-dw-mid.c @@ -89,6 +89,8 @@ err_exit: static void mid_spi_dma_exit(struct dw_spi *dws) { + if (!dws->dma_inited) + return; dma_release_channel(dws->txchan); dma_release_channel(dws->rxchan); } |