ALSA: usb-audio: Fix PCM buffer allocation in non-vmalloc mode
The commitf274baa49b
("ALSA: usb-audio: Allow non-vmalloc buffer for PCM buffers") introduced the mode to allocate coherent pages for PCM buffers, and it used bus->controller device as its DMA device. It turned out, however, that bus->sysdev is a more appropriate device to be used for DMA mapping in HCD code. This patch corrects the device reference accordingly. Note that, on most platforms, both point to the very same device, hence this patch doesn't change anything practically. But on platforms like xhcd-plat hcd, the change becomes effective. Fixes:f274baa49b
("ALSA: usb-audio: Allow non-vmalloc buffer for PCM buffers") Cc: <stable@vger.kernel.org> Link: https://lore.kernel.org/r/20210205144559.29555-1-tiwai@suse.de Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
parent
036f90dd92
commit
fb3c293b82
|
@ -1558,7 +1558,7 @@ void snd_usb_preallocate_buffer(struct snd_usb_substream *subs)
|
|||
{
|
||||
struct snd_pcm *pcm = subs->stream->pcm;
|
||||
struct snd_pcm_substream *s = pcm->streams[subs->direction].substream;
|
||||
struct device *dev = subs->dev->bus->controller;
|
||||
struct device *dev = subs->dev->bus->sysdev;
|
||||
|
||||
if (snd_usb_use_vmalloc)
|
||||
snd_pcm_set_managed_buffer(s, SNDRV_DMA_TYPE_VMALLOC,
|
||||
|
|
Loading…
Reference in New Issue