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

ASoC: rt5514-spi: 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.

Cc: Oder Chiou <oder_chiou@realtek.com>
Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
Link: https://lore.kernel.org/r/20191210142614.19405-19-tiwai@suse.de


Signed-off-by: default avatarMark Brown <broonie@kernel.org>
parent 66b3621b
Loading
Loading
Loading
Loading
+4 −6
Original line number Diff line number Diff line
@@ -215,11 +215,9 @@ static int rt5514_spi_hw_params(struct snd_soc_component *component,
{
	struct rt5514_dsp *rt5514_dsp =
		snd_soc_component_get_drvdata(component);
	int ret;
	u8 buf[8];

	mutex_lock(&rt5514_dsp->dma_lock);
	ret = snd_pcm_lib_malloc_pages(substream, params_buffer_bytes(hw_params));
	rt5514_dsp->substream = substream;
	rt5514_dsp->dma_offset = 0;

@@ -230,7 +228,7 @@ static int rt5514_spi_hw_params(struct snd_soc_component *component,

	mutex_unlock(&rt5514_dsp->dma_lock);

	return ret;
	return 0;
}

static int rt5514_spi_hw_free(struct snd_soc_component *component,
@@ -245,7 +243,7 @@ static int rt5514_spi_hw_free(struct snd_soc_component *component,

	cancel_delayed_work_sync(&rt5514_dsp->copy_work);

	return snd_pcm_lib_free_pages(substream);
	return 0;
}

static snd_pcm_uframes_t rt5514_spi_pcm_pointer(
@@ -294,7 +292,7 @@ static int rt5514_spi_pcm_probe(struct snd_soc_component *component)
static int rt5514_spi_pcm_new(struct snd_soc_component *component,
			      struct snd_soc_pcm_runtime *rtd)
{
	snd_pcm_lib_preallocate_pages_for_all(rtd->pcm, SNDRV_DMA_TYPE_VMALLOC,
	snd_pcm_set_managed_buffer_all(rtd->pcm, SNDRV_DMA_TYPE_VMALLOC,
				       NULL, 0, 0);
	return 0;
}