aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChristophe JAILLET <christophe.jaillet@wanadoo.fr>2017-02-18 04:42:02 -0500
committerMark Brown <broonie@kernel.org>2017-02-19 11:27:35 -0500
commit7abfe04c47d97243a7aeeb8fe211a15687bff67f (patch)
tree6e8375fcf04ade1c5dd44c3936146ac196b4658c
parentcce59c225920309e03c2ea350ed6a0e233e33963 (diff)
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>
-rw-r--r--drivers/spi/spi-ti-qspi.c3
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)
718 dma_cap_set(DMA_MEMCPY, mask); 718 dma_cap_set(DMA_MEMCPY, mask);
719 719
720 qspi->rx_chan = dma_request_chan_by_mask(&mask); 720 qspi->rx_chan = dma_request_chan_by_mask(&mask);
721 if (!qspi->rx_chan) { 721 if (IS_ERR(qspi->rx_chan)) {
722 dev_err(qspi->dev, 722 dev_err(qspi->dev,
723 "No Rx DMA available, trying mmap mode\n"); 723 "No Rx DMA available, trying mmap mode\n");
724 qspi->rx_chan = NULL;
724 ret = 0; 725 ret = 0;
725 goto no_dma; 726 goto no_dma;
726 } 727 }