dmaengine: rcar-dmac: set scatter/gather max segment size
authorWolfram Sang <wsa+renesas@sang-engineering.com>
Fri, 14 Sep 2018 15:43:28 +0000 (17:43 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sun, 24 Nov 2019 07:20:30 +0000 (08:20 +0100)
[ Upstream commit 97d49c59e219acac576e16293a6b8cb99302f62f ]

Fix warning when running with CONFIG_DMA_API_DEBUG_SG=y by allocating a
device_dma_parameters structure and filling in the max segment size.

Signed-off-by: Wolfram Sang <wsa+renesas@sang-engineering.com>
Signed-off-by: Vinod Koul <vkoul@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/dma/sh/rcar-dmac.c

index 041ce86..80ff95f 100644 (file)
@@ -198,6 +198,7 @@ struct rcar_dmac {
        struct dma_device engine;
        struct device *dev;
        void __iomem *iomem;
+       struct device_dma_parameters parms;
 
        unsigned int n_channels;
        struct rcar_dmac_chan *channels;
@@ -1814,6 +1815,8 @@ static int rcar_dmac_probe(struct platform_device *pdev)
 
        dmac->dev = &pdev->dev;
        platform_set_drvdata(pdev, dmac);
+       dmac->dev->dma_parms = &dmac->parms;
+       dma_set_max_seg_size(dmac->dev, RCAR_DMATCR_MASK);
        dma_set_mask_and_coherent(dmac->dev, DMA_BIT_MASK(40));
 
        ret = rcar_dmac_parse_of(&pdev->dev, dmac);