diff options
author | Christophe JAILLET <christophe.jaillet@wanadoo.fr> | 2017-02-18 10:42:02 +0100 |
---|---|---|
committer | Mark Brown <broonie@kernel.org> | 2017-02-19 16:27:35 +0000 |
commit | 7abfe04c47d97243a7aeeb8fe211a15687bff67f (patch) | |
tree | 6e8375fcf04ade1c5dd44c3936146ac196b4658c /drivers/spi | |
parent | cce59c225920309e03c2ea350ed6a0e233e33963 (diff) | |
download | talos-op-linux-7abfe04c47d97243a7aeeb8fe211a15687bff67f.tar.gz talos-op-linux-7abfe04c47d97243a7aeeb8fe211a15687bff67f.zip |
spi: spi-ti-qspi: Fix error handling
'dma_request_chan_by_mask()' can not return NULL.
Try to keep the logic in 'no_dma:' by resetting 'qspi->rx_chan' in case
of error.
Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'drivers/spi')
-rw-r--r-- | drivers/spi/spi-ti-qspi.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/spi/spi-ti-qspi.c b/drivers/spi/spi-ti-qspi.c index e784d0f64dc1..ad76a44fee6f 100644 --- a/drivers/spi/spi-ti-qspi.c +++ b/drivers/spi/spi-ti-qspi.c @@ -718,9 +718,10 @@ static int ti_qspi_probe(struct platform_device *pdev) dma_cap_set(DMA_MEMCPY, mask); qspi->rx_chan = dma_request_chan_by_mask(&mask); - if (!qspi->rx_chan) { + if (IS_ERR(qspi->rx_chan)) { dev_err(qspi->dev, "No Rx DMA available, trying mmap mode\n"); + qspi->rx_chan = NULL; ret = 0; goto no_dma; } |