spi: spi-zynqmp-gqspi: Handle error for dma_set_mask
authorJiasheng Jiang <jiasheng@iscas.ac.cn>
Wed, 2 Mar 2022 09:20:51 +0000 (17:20 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 8 Apr 2022 12:23:07 +0000 (14:23 +0200)
[ Upstream commit 13262fc26c1837c51a5131dbbdd67a2387f8bfc7 ]

As the potential failure of the dma_set_mask(),
it should be better to check it and return error
if fails.

Fixes: 126bdb606fd2 ("spi: spi-zynqmp-gqspi: return -ENOMEM if dma_map_single fails")
Signed-off-by: Jiasheng Jiang <jiasheng@iscas.ac.cn>
Link: https://lore.kernel.org/r/20220302092051.121343-1-jiasheng@iscas.ac.cn
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/spi/spi-zynqmp-gqspi.c

index 328b655..2b5afae 100644 (file)
@@ -1172,7 +1172,10 @@ static int zynqmp_qspi_probe(struct platform_device *pdev)
                goto clk_dis_all;
        }
 
-       dma_set_mask(&pdev->dev, DMA_BIT_MASK(44));
+       ret = dma_set_mask(&pdev->dev, DMA_BIT_MASK(44));
+       if (ret)
+               goto clk_dis_all;
+
        ctlr->bits_per_word_mask = SPI_BPW_MASK(8);
        ctlr->num_chipselect = GQSPI_DEFAULT_NUM_CS;
        ctlr->mem_ops = &zynqmp_qspi_mem_ops;