From 7d50b295c4af16f814ee82369c4a234df5228801 Mon Sep 17 00:00:00 2001
From: Takashi Iwai <tiwai@suse.de>
Date: Fri, 17 Jul 2020 08:41:30 +0200
Subject: [PATCH] Revert "ALSA: pcm: Use SG-buffer only when direct DMA is available"
Git-commit: 7d50b295c4af16f814ee82369c4a234df5228801
Patch-mainline: v5.9-rc1
References: jsc#SLE-16518
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 <tiwai@suse.de>
---
sound/core/pcm_memory.c | 14 --------------
1 file changed, 14 deletions(-)
diff --git a/sound/core/pcm_memory.c b/sound/core/pcm_memory.c
index 795af1b88051..1bf6a3d9e0c2 100644
--- a/sound/core/pcm_memory.c
+++ b/sound/core/pcm_memory.c
@@ -11,7 +11,6 @@
#include <linux/moduleparam.h>
#include <linux/vmalloc.h>
#include <linux/export.h>
-#include <linux/dma-mapping.h>
#include <sound/core.h>
#include <sound/pcm.h>
#include <sound/info.h>
@@ -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);
--
2.16.4