Skip to content

Commit

Permalink
ALSA: pcm: use dma_can_mmap() to check if a device supports dma_mmap_*
Browse files Browse the repository at this point in the history
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: Christoph Hellwig <[email protected]>
Reviewed-by: Takashi Iwai <[email protected]>
  • Loading branch information
Christoph Hellwig committed Sep 4, 2019
1 parent e29ccc1 commit 425da15
Showing 1 changed file with 6 additions and 7 deletions.
13 changes: 6 additions & 7 deletions sound/core/pcm_native.c
Original file line number Diff line number Diff line change
Expand Up @@ -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
return true;

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,
Expand Down

0 comments on commit 425da15

Please sign in to comment.