]> git.baikalelectronics.ru Git - kernel.git/commit
ALSA: pcm: Use dma_bytes as size parameter in dma_mmap_coherent()
authorStefan Roese <sr@denx.de>
Mon, 26 Mar 2018 14:10:21 +0000 (16:10 +0200)
committerTakashi Iwai <tiwai@suse.de>
Mon, 26 Mar 2018 14:33:50 +0000 (16:33 +0200)
commit20f52250f82d19104f3538ec6495ce2c6ece24d5
tree31389db8da156bab6a547407d6b9349db6fc6022
parentd73cd52b1c9b3e1b61afc9f7735021ed6daf7c36
ALSA: pcm: Use dma_bytes as size parameter in dma_mmap_coherent()

When trying to use the driver (e.g. aplay *.wav), the 4MiB DMA buffer
will get mmapp'ed in 16KiB chunks. But this fails with the 2nd 16KiB
area, as the page offset is outside of the VMA range (size), which is
currently used as size parameter in snd_pcm_lib_default_mmap(). By
using the DMA buffer size (dma_bytes) instead, the complete DMA buffer
can be mmapp'ed and the issue is fixed.

This issue was detected on an ARM platform (TI AM57xx) using the RME
HDSP MADI PCIe soundcard.

Fixes: aeccf6e1fb2f ("ALSA: pcm - Use dma_mmap_coherent() if available")
Signed-off-by: Stefan Roese <sr@denx.de>
Cc: <stable@vger.kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/core/pcm_native.c