]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
spi: mt65xx: Add dma max segment size declaration
authorzhichao.liu <zhichao.liu@mediatek.com>
Tue, 27 Sep 2022 08:32:48 +0000 (16:32 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 31 Dec 2022 12:26:05 +0000 (13:26 +0100)
[ Upstream commit 309e98548c2b144512d0a212f2d786ae9694f5e4 ]

Add spi dma max segment size declaration according to spi
hardware capability, instead of 64KB by system default
setting, to improve bus bandwidth for mass data transmission.

Signed-off-by: zhichao.liu <zhichao.liu@mediatek.com>
Link: https://lore.kernel.org/r/20220927083248.25404-1-zhichao.liu@mediatek.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Stable-dep-of: c6f7874687f7 ("spi: mediatek: Enable irq when pdata is ready")
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/spi/spi-mt65xx.c

index a7cc96aeb590390e4133204e16c2b31072db6abe..d6aff909fc365e0fa48f0cdd2b20fa52659f7232 100644 (file)
@@ -1187,6 +1187,11 @@ static int mtk_spi_probe(struct platform_device *pdev)
        if (!dev->dma_mask)
                dev->dma_mask = &dev->coherent_dma_mask;
 
+       if (mdata->dev_comp->ipm_design)
+               dma_set_max_seg_size(dev, SZ_16M);
+       else
+               dma_set_max_seg_size(dev, SZ_256K);
+
        ret = devm_request_irq(dev, irq, mtk_spi_interrupt,
                               IRQF_TRIGGER_NONE, dev_name(dev), master);
        if (ret)