ALSA: pcm: Fix mmap breakage without explicit buffer setup
The recent fixc4824ae7db
("ALSA: pcm: Fix mmap capability check") restricts the mmap capability only to the drivers that properly set up the buffers, but it caused a regression for a few drivers that manage the buffer on its own way. For those with UNKNOWN buffer type (i.e. the uninitialized / unused substream->dma_buffer), just assume that the driver handles the mmap properly and blindly trust the hardware info bit. Fixes:c4824ae7db
("ALSA: pcm: Fix mmap capability check") Reported-and-tested-by: Jeff Woods <jwoods@fnordco.com> Cc: <stable@vger.kernel.org> Link: https://lore.kernel.org/r/s5him0gpghv.wl-tiwai@suse.de Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
parent
739d0959fb
commit
dc0dc8a73e
|
@ -251,7 +251,10 @@ static bool hw_support_mmap(struct snd_pcm_substream *substream)
|
|||
|
||||
switch (substream->dma_buffer.dev.type) {
|
||||
case SNDRV_DMA_TYPE_UNKNOWN:
|
||||
return false;
|
||||
/* we can't know the device, so just assume that the driver does
|
||||
* everything right
|
||||
*/
|
||||
return true;
|
||||
case SNDRV_DMA_TYPE_CONTINUOUS:
|
||||
case SNDRV_DMA_TYPE_VMALLOC:
|
||||
return true;
|
||||
|
|
Loading…
Reference in New Issue