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:11:56 -0500
commit30fb27239f987c53429f24297f5d46e28d0e16ed (patch)
treeb0f8625c61b7f7d1da268bcb18162511b824fcf2
parent582c97f6868cf70720a17d2421d317333f3ad597 (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 ec6fb09e2e17..0fefa6423ff4 100644
--- a/drivers/spi/spi-ti-qspi.c
+++ b/drivers/spi/spi-ti-qspi.c
@@ -714,9 +714,10 @@ static int ti_qspi_probe(struct platform_device *pdev)
714 dma_cap_set(DMA_MEMCPY, mask); 714 dma_cap_set(DMA_MEMCPY, mask);
715 715
716 qspi->rx_chan = dma_request_chan_by_mask(&mask); 716 qspi->rx_chan = dma_request_chan_by_mask(&mask);
717 if (!qspi->rx_chan) { 717 if (IS_ERR(qspi->rx_chan)) {
718 dev_err(qspi->dev, 718 dev_err(qspi->dev,
719 "No Rx DMA available, trying mmap mode\n"); 719 "No Rx DMA available, trying mmap mode\n");
720 qspi->rx_chan = NULL;
720 ret = 0; 721 ret = 0;
721 goto no_dma; 722 goto no_dma;
722 } 723 }