linux-next: build failure after merge of the sound tree

Stephen Rothwell
2020-07-17T03:01:21Z

[-- Attachment #1: Type: text/plain, Size: 1720 bytes --]

Hi all,

After merging the sound tree, today's linux-next build (x86_64
allmodconfig) failed like this:

sound/core/pcm_memory.c: In function 'do_alloc_pages':
sound/core/pcm_memory.c:47:7: error: implicit declaration of function 'dma_is_direct'; did you mean 'd_is_dir'? [-Werror=implicit-function-declaration]
47 | !dma_is_direct(get_dma_ops(dev))) {
| ^~~~~~~~~~~~~
| d_is_dir

Caused by commit

3ad796cbc36a ("ALSA: pcm: Use SG-buffer only when direct DMA is available")

interacting with commit

d3fa60d7bfdc ("dma-mapping: move the remaining DMA API calls out of line")

from the dma-mapping tree.

I am not sure of the best fix here, so I just added this hack to make
it build for now. Suggestions welcome.

From: Stephen Rothwell <sfr@canb.auug.org.au>
Date: Fri, 17 Jul 2020 12:57:38 +1000
Subject: [PATCH] merge fix for dma_is_direct() removal

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
---
sound/core/pcm_memory.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sound/core/pcm_memory.c b/sound/core/pcm_memory.c
index 795af1b88051..89480f12086a 100644
--- a/sound/core/pcm_memory.c
+++ b/sound/core/pcm_memory.c
@@ -44,7 +44,7 @@ static int do_alloc_pages(struct snd_card *card, int type, struct device *dev,

#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))) {
+ 1 /* !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)
--
2.27.0

--
Cheers,
Stephen Rothwell

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]