]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
ASoC: Intel: avs: Set max DMA segment size
authorAmadeusz Sławiński <amadeuszx.slawinski@linux.intel.com>
Thu, 7 Jul 2022 12:41:48 +0000 (14:41 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 25 Aug 2022 09:45:48 +0000 (11:45 +0200)
[ Upstream commit 8544eebc78c96f1834a46b26ade3e7ebe785d10c ]

Apparently it is possible for code to allocate large buffers which may
cause warnings as reported in [1]. This was fixed for HDA, SOF and
skylake in patchset [2], fix it also for avs driver.

[1] https://github.com/thesofproject/linux/issues/3430
[2] https://lore.kernel.org/all/20220215132756.31236-1-tiwai@suse.de/

Signed-off-by: Amadeusz Sławiński <amadeuszx.slawinski@linux.intel.com>
Signed-off-by: Cezary Rojewski <cezary.rojewski@intel.com>
Link: https://lore.kernel.org/r/20220707124153.1858249-8-cezary.rojewski@intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
sound/soc/intel/avs/core.c

index 3a0997c3af2b9aab472305422bbdb601ccae8201..cf373969bb69d2ad0119cb80f5dd6ce51b34fcb9 100644 (file)
@@ -445,6 +445,7 @@ static int avs_pci_probe(struct pci_dev *pci, const struct pci_device_id *id)
                dma_set_mask(dev, DMA_BIT_MASK(32));
                dma_set_coherent_mask(dev, DMA_BIT_MASK(32));
        }
+       dma_set_max_seg_size(dev, UINT_MAX);
 
        ret = avs_hdac_bus_init_streams(bus);
        if (ret < 0) {