]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
mtd: rawnand: fsmc: Fix error code in fsmc_nand_probe()
authorDan Carpenter <dan.carpenter@oracle.com>
Mon, 15 Feb 2021 15:58:49 +0000 (18:58 +0300)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 22 May 2021 08:59:28 +0000 (10:59 +0200)
[ Upstream commit e7a97528e3c787802d8c643d6ab2f428511bb047 ]

If dma_request_channel() fails then the probe fails and it should
return a negative error code, but currently it returns success.

fixes: 4774fb0a48aa ("mtd: nand/fsmc: Add DMA support")
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
Link: https://lore.kernel.org/linux-mtd/YCqaOZ83OvPOzLwh@mwanda
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/mtd/nand/raw/fsmc_nand.c

index 25d354e9448ec73ff14ec635e6de40df481597f5..a31bb1da44ec9496bd74e121ca5a2074b84a69ae 100644 (file)
@@ -1099,11 +1099,13 @@ static int __init fsmc_nand_probe(struct platform_device *pdev)
                host->read_dma_chan = dma_request_channel(mask, filter, NULL);
                if (!host->read_dma_chan) {
                        dev_err(&pdev->dev, "Unable to get read dma channel\n");
+                       ret = -ENODEV;
                        goto disable_clk;
                }
                host->write_dma_chan = dma_request_channel(mask, filter, NULL);
                if (!host->write_dma_chan) {
                        dev_err(&pdev->dev, "Unable to get write dma channel\n");
+                       ret = -ENODEV;
                        goto release_dma_read_chan;
                }
        }