ALSA: lola: Use managed buffer allocation

Clean up the driver with the new managed buffer allocation API.
The superfluous snd_pcm_lib_malloc_pages() and
snd_pcm_lib_free_pages() calls are dropped.

Link: https://lore.kernel.org/r/20191209094943.14984-45-tiwai@suse.de
Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
Takashi Iwai 2019-12-09 10:49:16 +01:00
parent 28d52aa554
commit 224a40c751

View File

@ -282,8 +282,7 @@ static int lola_pcm_hw_params(struct snd_pcm_substream *substream,
str->bufsize = 0; str->bufsize = 0;
str->period_bytes = 0; str->period_bytes = 0;
str->format_verb = 0; str->format_verb = 0;
return snd_pcm_lib_malloc_pages(substream, return 0;
params_buffer_bytes(hw_params));
} }
static int lola_pcm_hw_free(struct snd_pcm_substream *substream) static int lola_pcm_hw_free(struct snd_pcm_substream *substream)
@ -296,7 +295,7 @@ static int lola_pcm_hw_free(struct snd_pcm_substream *substream)
lola_stream_reset(chip, str); lola_stream_reset(chip, str);
lola_cleanup_slave_streams(pcm, str); lola_cleanup_slave_streams(pcm, str);
mutex_unlock(&chip->open_mutex); mutex_unlock(&chip->open_mutex);
return snd_pcm_lib_free_pages(substream); return 0;
} }
/* /*
@ -610,9 +609,9 @@ int lola_create_pcm(struct lola *chip)
snd_pcm_set_ops(pcm, i, &lola_pcm_ops); snd_pcm_set_ops(pcm, i, &lola_pcm_ops);
} }
/* buffer pre-allocation */ /* buffer pre-allocation */
snd_pcm_lib_preallocate_pages_for_all(pcm, SNDRV_DMA_TYPE_DEV_SG, snd_pcm_set_managed_buffer_all(pcm, SNDRV_DMA_TYPE_DEV_SG,
&chip->pci->dev, &chip->pci->dev,
1024 * 64, 32 * 1024 * 1024); 1024 * 64, 32 * 1024 * 1024);
return 0; return 0;
} }