Commit d708c2b3 authored by Takashi Iwai's avatar Takashi Iwai Committed by Mark Brown

ASoC: generic-dmaengine-pcm: Use managed buffer allocation

Clean up the driver with the new managed buffer allocation API.
The hw_free callback became superfluous and got dropped.

Cc: Lars-Peter Clausen <lars@metafoo.de>
Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
Link: https://lore.kernel.org/r/20191210142614.19405-11-tiwai@suse.deSigned-off-by: default avatarMark Brown <broonie@kernel.org>
parent e494dbcd
......@@ -104,7 +104,7 @@ static int dmaengine_pcm_hw_params(struct snd_soc_component *component,
return ret;
}
return snd_pcm_lib_malloc_pages(substream, params_buffer_bytes(params));
return 0;
}
static int
......@@ -168,12 +168,6 @@ static int dmaengine_pcm_close(struct snd_soc_component *component,
return snd_dmaengine_pcm_close(substream);
}
static int dmaengine_pcm_hw_free(struct snd_soc_component *component,
struct snd_pcm_substream *substream)
{
return snd_pcm_lib_free_pages(substream);
}
static int dmaengine_pcm_trigger(struct snd_soc_component *component,
struct snd_pcm_substream *substream, int cmd)
{
......@@ -261,7 +255,7 @@ static int dmaengine_pcm_new(struct snd_soc_component *component,
return -EINVAL;
}
snd_pcm_lib_preallocate_pages(substream,
snd_pcm_set_managed_buffer(substream,
SNDRV_DMA_TYPE_DEV_IRAM,
dmaengine_dma_dev(pcm, substream),
prealloc_buffer_size,
......@@ -330,7 +324,6 @@ static const struct snd_soc_component_driver dmaengine_pcm_component = {
.open = dmaengine_pcm_open,
.close = dmaengine_pcm_close,
.hw_params = dmaengine_pcm_hw_params,
.hw_free = dmaengine_pcm_hw_free,
.trigger = dmaengine_pcm_trigger,
.pointer = dmaengine_pcm_pointer,
.pcm_construct = dmaengine_pcm_new,
......@@ -342,7 +335,6 @@ static const struct snd_soc_component_driver dmaengine_pcm_component_process = {
.open = dmaengine_pcm_open,
.close = dmaengine_pcm_close,
.hw_params = dmaengine_pcm_hw_params,
.hw_free = dmaengine_pcm_hw_free,
.trigger = dmaengine_pcm_trigger,
.pointer = dmaengine_pcm_pointer,
.copy_user = dmaengine_copy_user,
......
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