Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 425da159 authored by Christoph Hellwig's avatar Christoph Hellwig
Browse files

ALSA: pcm: use dma_can_mmap() to check if a device supports dma_mmap_*



Replace the local hack with the dma_can_mmap helper to check if
a given device supports mapping DMA allocations to userspace.

Signed-off-by: default avatarChristoph Hellwig <hch@lst.de>
Reviewed-by: default avatarTakashi Iwai <tiwai@suse.de>
parent e29ccc18
Loading
Loading
Loading
Loading
+6 −7
Original line number Diff line number Diff line
@@ -220,13 +220,12 @@ static bool hw_support_mmap(struct snd_pcm_substream *substream)
{
	if (!(substream->runtime->hw.info & SNDRV_PCM_INFO_MMAP))
		return false;
	/* architecture supports dma_mmap_coherent()? */
#if defined(CONFIG_ARCH_NO_COHERENT_DMA_MMAP) || !defined(CONFIG_HAS_DMA)
	if (!substream->ops->mmap &&
	    substream->dma_buffer.dev.type == SNDRV_DMA_TYPE_DEV)
		return false;
#endif

	if (substream->ops->mmap ||
	    substream->dma_buffer.dev.type != SNDRV_DMA_TYPE_DEV)
		return true;

	return dma_can_mmap(substream->dma_buffer.dev.dev);
}

static int constrain_mask_params(struct snd_pcm_substream *substream,