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

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.de


Signed-off-by: default avatarMark Brown <broonie@kernel.org>
parent e494dbcd
Loading
Loading
Loading
Loading
+2 −10
Original line number Diff line number Diff line
@@ -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,