Commit 76178cc7 authored by Takashi Iwai's avatar Takashi Iwai

ALSA: ctxfi: 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-34-tiwai@suse.deSigned-off-by: default avatarTakashi Iwai <tiwai@suse.de>
parent c6071300
...@@ -178,15 +178,10 @@ static int ct_pcm_hw_params(struct snd_pcm_substream *substream, ...@@ -178,15 +178,10 @@ static int ct_pcm_hw_params(struct snd_pcm_substream *substream,
{ {
struct ct_atc *atc = snd_pcm_substream_chip(substream); struct ct_atc *atc = snd_pcm_substream_chip(substream);
struct ct_atc_pcm *apcm = substream->runtime->private_data; struct ct_atc_pcm *apcm = substream->runtime->private_data;
int err;
err = snd_pcm_lib_malloc_pages(substream,
params_buffer_bytes(hw_params));
if (err < 0)
return err;
/* clear previous resources */ /* clear previous resources */
atc->pcm_release_resources(atc, apcm); atc->pcm_release_resources(atc, apcm);
return err; return 0;
} }
static int ct_pcm_hw_free(struct snd_pcm_substream *substream) static int ct_pcm_hw_free(struct snd_pcm_substream *substream)
...@@ -196,8 +191,7 @@ static int ct_pcm_hw_free(struct snd_pcm_substream *substream) ...@@ -196,8 +191,7 @@ static int ct_pcm_hw_free(struct snd_pcm_substream *substream)
/* clear previous resources */ /* clear previous resources */
atc->pcm_release_resources(atc, apcm); atc->pcm_release_resources(atc, apcm);
/* Free snd-allocated pages */ return 0;
return snd_pcm_lib_free_pages(substream);
} }
...@@ -449,9 +443,8 @@ int ct_alsa_pcm_create(struct ct_atc *atc, ...@@ -449,9 +443,8 @@ int ct_alsa_pcm_create(struct ct_atc *atc,
snd_pcm_set_ops(pcm, snd_pcm_set_ops(pcm,
SNDRV_PCM_STREAM_CAPTURE, &ct_pcm_capture_ops); SNDRV_PCM_STREAM_CAPTURE, &ct_pcm_capture_ops);
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,
&atc->pci->dev, &atc->pci->dev, 128*1024, 128*1024);
128*1024, 128*1024);
chs = 2; chs = 2;
switch (device) { switch (device) {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment