spi: spi-ti-qspi: Fix error handling
authorChristophe JAILLET <christophe.jaillet@wanadoo.fr>
Sat, 18 Feb 2017 09:42:02 +0000 (10:42 +0100)
committerMark Brown <broonie@kernel.org>
Sun, 19 Feb 2017 16:27:35 +0000 (16:27 +0000)
'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>
drivers/spi/spi-ti-qspi.c

index e784d0f64dc1dc426a3eebe4e2f7ab9964f2a8ed..ad76a44fee6f4e9df0e2bb6e46354599e907192a 100644 (file)
@@ -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;
        }