diff --git a/sound/soc/soc-pcm.c b/sound/soc/soc-pcm.c index 69c764c6fe42..8e645bbec656 100644 --- a/sound/soc/soc-pcm.c +++ b/sound/soc/soc-pcm.c @@ -942,7 +942,8 @@ static int soc_pcm_hw_params(struct snd_pcm_substream *substream, if (rtd->dai_link->no_host_mode == SND_SOC_DAI_LINK_NO_HOST) { substream->dma_buffer.dev.type = SNDRV_DMA_TYPE_DEV; substream->dma_buffer.dev.dev = rtd->dev; - substream->dma_buffer.dev.dev->coherent_dma_mask = DMA_BIT_MASK(32); + substream->dma_buffer.dev.dev->coherent_dma_mask = + DMA_BIT_MASK(sizeof(dma_addr_t) * 8); substream->dma_buffer.private_data = NULL; ret = snd_pcm_lib_malloc_pages(substream, PAGE_SIZE);