Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit e52dfd2a authored by Jiasheng Jiang's avatar Jiasheng Jiang Committed by Greg Kroah-Hartman
Browse files

dmaengine: sh: rcar-dmac: Check for error num after setting mask



commit 2d21543efe332cd8c8f212fb7d365bc8b0690bfa upstream.

Because of the possible failure of the dma_supported(), the
dma_set_mask_and_coherent() may return error num.
Therefore, it should be better to check it and return the error if
fails.

Fixes: dc312349 ("dmaengine: rcar-dmac: Widen DMA mask to 40 bits")
Signed-off-by: default avatarJiasheng Jiang <jiasheng@iscas.ac.cn>
Reviewed-by: default avatarGeert Uytterhoeven <geert+renesas@glider.be>
Link: https://lore.kernel.org/r/20220106030939.2644320-1-jiasheng@iscas.ac.cn


Signed-off-by: default avatarVinod Koul <vkoul@kernel.org>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent c83049cb
Loading
Loading
Loading
Loading
+3 −1
Original line number Original line Diff line number Diff line
@@ -1825,7 +1825,9 @@ static int rcar_dmac_probe(struct platform_device *pdev)
	platform_set_drvdata(pdev, dmac);
	platform_set_drvdata(pdev, dmac);
	dmac->dev->dma_parms = &dmac->parms;
	dmac->dev->dma_parms = &dmac->parms;
	dma_set_max_seg_size(dmac->dev, RCAR_DMATCR_MASK);
	dma_set_max_seg_size(dmac->dev, RCAR_DMATCR_MASK);
	dma_set_mask_and_coherent(dmac->dev, DMA_BIT_MASK(40));
	ret = dma_set_mask_and_coherent(dmac->dev, DMA_BIT_MASK(40));
	if (ret)
		return ret;


	ret = rcar_dmac_parse_of(&pdev->dev, dmac);
	ret = rcar_dmac_parse_of(&pdev->dev, dmac);
	if (ret < 0)
	if (ret < 0)