From: Takashi Iwai Date: Fri, 17 Jul 2020 06:41:30 +0000 (+0200) Subject: Revert "ALSA: pcm: Use SG-buffer only when direct DMA is available" X-Git-Tag: v5.10.7~1331^2~83^2~8 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=7d50b295c4af16f814ee82369c4a234df5228801;p=platform%2Fkernel%2Flinux-rpi.git Revert "ALSA: pcm: Use SG-buffer only when direct DMA is available" This reverts commit 3ad796cbc36a ("ALSA: pcm: Use SG-buffer only when direct DMA is available") also the modification commit 467fd0e82b62 ("ALSA: pcm: Fix build error on m68k and others"). Poking the DMA internal helper is a layer violation, so we should avoid that. Meanwhile the actual bug has been addressed by the Kconfig fix in commit dbed452a078d ("dma-pool: decouple DMA_REMAP from DMA_COHERENT_POOL"), so we can live without this hack. Link: https://lore.kernel.org/r/20200717064130.22957-1-tiwai@suse.de Signed-off-by: Takashi Iwai --- diff --git a/sound/core/pcm_memory.c b/sound/core/pcm_memory.c index 795af1b..1bf6a3d 100644 --- a/sound/core/pcm_memory.c +++ b/sound/core/pcm_memory.c @@ -11,7 +11,6 @@ #include #include #include -#include #include #include #include @@ -41,19 +40,6 @@ static int do_alloc_pages(struct snd_card *card, int type, struct device *dev, card->total_pcm_alloc_bytes + size > max_alloc_per_card) return -ENOMEM; - -#ifdef CONFIG_SND_DMA_SGBUF - if ((type == SNDRV_DMA_TYPE_DEV_SG || type == SNDRV_DMA_TYPE_DEV_UC_SG) && - !dma_is_direct(get_dma_ops(dev))) { - /* mutate to continuous page allocation */ - dev_dbg(dev, "Use continuous page allocator\n"); - if (type == SNDRV_DMA_TYPE_DEV_SG) - type = SNDRV_DMA_TYPE_DEV; - else - type = SNDRV_DMA_TYPE_DEV_UC; - } -#endif /* CONFIG_SND_DMA_SGBUF */ - err = snd_dma_alloc_pages(type, dev, size, dmab); if (!err) { mutex_lock(&card->memory_mutex);