forked from luck/tmp_suning_uos_patched
ALSA: pcm: Avoid mmap warnings on x86
On x86, using dma_mmap_coherent() for the pages allocated via dma_alloc_coherent() results in a warning like: aplay:32536 map pfn RAM range req uncached-minus for [mem 0x21d500000-0x21d51ffff], got write-back Until the issue is addressed in the core side, take back to the old good way in PCM code only for x86. Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
parent
8057727087
commit
49d776ffb5
|
@ -3326,6 +3326,7 @@ int snd_pcm_lib_default_mmap(struct snd_pcm_substream *substream,
|
||||||
area->vm_end - area->vm_start, area->vm_page_prot);
|
area->vm_end - area->vm_start, area->vm_page_prot);
|
||||||
}
|
}
|
||||||
#endif /* CONFIG_GENERIC_ALLOCATOR */
|
#endif /* CONFIG_GENERIC_ALLOCATOR */
|
||||||
|
#ifndef CONFIG_X86 /* for avoiding warnings arch/x86/mm/pat.c */
|
||||||
if (!substream->ops->page &&
|
if (!substream->ops->page &&
|
||||||
substream->dma_buffer.dev.type == SNDRV_DMA_TYPE_DEV)
|
substream->dma_buffer.dev.type == SNDRV_DMA_TYPE_DEV)
|
||||||
return dma_mmap_coherent(substream->dma_buffer.dev.dev,
|
return dma_mmap_coherent(substream->dma_buffer.dev.dev,
|
||||||
|
@ -3333,6 +3334,7 @@ int snd_pcm_lib_default_mmap(struct snd_pcm_substream *substream,
|
||||||
substream->runtime->dma_area,
|
substream->runtime->dma_area,
|
||||||
substream->runtime->dma_addr,
|
substream->runtime->dma_addr,
|
||||||
area->vm_end - area->vm_start);
|
area->vm_end - area->vm_start);
|
||||||
|
#endif /* CONFIG_X86 */
|
||||||
/* mmap with fault handler */
|
/* mmap with fault handler */
|
||||||
area->vm_ops = &snd_pcm_vm_ops_data_fault;
|
area->vm_ops = &snd_pcm_vm_ops_data_fault;
|
||||||
return 0;
|
return 0;
|
||||||
|
|
Loading…
Reference in New Issue
Block a user