All of lore.kernel.org
 help / color / mirror / Atom feed
From: Takashi Iwai <tiwai@suse.de>
To: Mark Brown <broonie@kernel.org>
Cc: Takashi Iwai <tiwai@suse.de>, alsa-devel@alsa-project.org
Subject: [alsa-devel] [PATCH for-5.6 02/23] ASoC: au1x: Use managed buffer allocation
Date: Tue, 10 Dec 2019 15:25:53 +0100	[thread overview]
Message-ID: <20191210142614.19405-3-tiwai@suse.de> (raw)
In-Reply-To: <20191210142614.19405-1-tiwai@suse.de>

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

Signed-off-by: Takashi Iwai <tiwai@suse.de>
---
 sound/soc/au1x/dbdma2.c | 14 +-------------
 sound/soc/au1x/dma.c    | 21 ++++++---------------
 2 files changed, 7 insertions(+), 28 deletions(-)

diff --git a/sound/soc/au1x/dbdma2.c b/sound/soc/au1x/dbdma2.c
index 4553108ec92a..b2c0a0d8a407 100644
--- a/sound/soc/au1x/dbdma2.c
+++ b/sound/soc/au1x/dbdma2.c
@@ -197,10 +197,6 @@ static int au1xpsc_pcm_hw_params(struct snd_soc_component *component,
 	struct au1xpsc_audio_dmadata *pcd;
 	int stype, ret;
 
-	ret = snd_pcm_lib_malloc_pages(substream, params_buffer_bytes(params));
-	if (ret < 0)
-		goto out;
-
 	stype = substream->stream;
 	pcd = to_dmadata(substream, component);
 
@@ -232,13 +228,6 @@ static int au1xpsc_pcm_hw_params(struct snd_soc_component *component,
 	return ret;
 }
 
-static int au1xpsc_pcm_hw_free(struct snd_soc_component *component,
-			       struct snd_pcm_substream *substream)
-{
-	snd_pcm_lib_free_pages(substream);
-	return 0;
-}
-
 static int au1xpsc_pcm_prepare(struct snd_soc_component *component,
 			       struct snd_pcm_substream *substream)
 {
@@ -315,7 +304,7 @@ static int au1xpsc_pcm_new(struct snd_soc_component *component,
 	struct snd_card *card = rtd->card->snd_card;
 	struct snd_pcm *pcm = rtd->pcm;
 
-	snd_pcm_lib_preallocate_pages_for_all(pcm, SNDRV_DMA_TYPE_DEV,
+	snd_pcm_set_managed_buffer_all(pcm, SNDRV_DMA_TYPE_DEV,
 		card->dev, AU1XPSC_BUFFER_MIN_BYTES, (4096 * 1024) - 1);
 
 	return 0;
@@ -328,7 +317,6 @@ static struct snd_soc_component_driver au1xpsc_soc_component = {
 	.close		= au1xpsc_pcm_close,
 	.ioctl		= snd_soc_pcm_lib_ioctl,
 	.hw_params	= au1xpsc_pcm_hw_params,
-	.hw_free	= au1xpsc_pcm_hw_free,
 	.prepare	= au1xpsc_pcm_prepare,
 	.trigger	= au1xpsc_pcm_trigger,
 	.pointer	= au1xpsc_pcm_pointer,
diff --git a/sound/soc/au1x/dma.c b/sound/soc/au1x/dma.c
index 054dfda89d3e..037f4a98fb76 100644
--- a/sound/soc/au1x/dma.c
+++ b/sound/soc/au1x/dma.c
@@ -231,19 +231,10 @@ static int alchemy_pcm_hw_params(struct snd_soc_component *component,
 				 struct snd_pcm_hw_params *hw_params)
 {
 	struct audio_stream *stream = ss_to_as(substream, component);
-	int err;
-
-	err = snd_pcm_lib_malloc_pages(substream,
-				       params_buffer_bytes(hw_params));
-	if (err < 0)
-		return err;
-	err = au1000_setup_dma_link(stream,
-				    params_period_bytes(hw_params),
-				    params_periods(hw_params));
-	if (err)
-		snd_pcm_lib_free_pages(substream);
 
-	return err;
+	return au1000_setup_dma_link(stream,
+				     params_period_bytes(hw_params),
+				     params_periods(hw_params));
 }
 
 static int alchemy_pcm_hw_free(struct snd_soc_component *component,
@@ -251,7 +242,7 @@ static int alchemy_pcm_hw_free(struct snd_soc_component *component,
 {
 	struct audio_stream *stream = ss_to_as(substream, component);
 	au1000_release_dma_link(stream);
-	return snd_pcm_lib_free_pages(substream);
+	return 0;
 }
 
 static int alchemy_pcm_trigger(struct snd_soc_component *component,
@@ -292,8 +283,8 @@ static int alchemy_pcm_new(struct snd_soc_component *component,
 {
 	struct snd_pcm *pcm = rtd->pcm;
 
-	snd_pcm_lib_preallocate_pages_for_all(pcm, SNDRV_DMA_TYPE_CONTINUOUS,
-					      NULL, 65536, (4096 * 1024) - 1);
+	snd_pcm_set_managed_buffer_all(pcm, SNDRV_DMA_TYPE_CONTINUOUS,
+				       NULL, 65536, (4096 * 1024) - 1);
 
 	return 0;
 }
-- 
2.16.4

_______________________________________________
Alsa-devel mailing list
Alsa-devel@alsa-project.org
https://mailman.alsa-project.org/mailman/listinfo/alsa-devel

  parent reply	other threads:[~2019-12-10 14:30 UTC|newest]

Thread overview: 48+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-12-10 14:25 [alsa-devel] [PATCH for-5.6 00/23] ASoC: PCM API updates (part I) Takashi Iwai
2019-12-10 14:25 ` [alsa-devel] [PATCH for-5.6 01/23] ASoC: amd: Use managed buffer allocation Takashi Iwai
2019-12-11 16:54   ` [alsa-devel] Applied "ASoC: amd: Use managed buffer allocation" to the asoc tree Mark Brown
2019-12-10 14:25 ` Takashi Iwai [this message]
2019-12-11 16:53   ` [alsa-devel] Applied "ASoC: au1x: " Mark Brown
2019-12-10 14:25 ` [alsa-devel] [PATCH for-5.6 03/23] ASoC: dwc: Use managed buffer allocation Takashi Iwai
2019-12-11 16:53   ` [alsa-devel] Applied "ASoC: dwc: Use managed buffer allocation" to the asoc tree Mark Brown
2019-12-10 14:25 ` [alsa-devel] [PATCH for-5.6 04/23] ASoC: mediatek: Use managed buffer allocation Takashi Iwai
2019-12-11 16:47   ` Mark Brown
2019-12-10 14:25 ` [alsa-devel] [PATCH for-5.6 05/23] ASoC: meson: " Takashi Iwai
2019-12-11  9:49   ` Jerome Brunet
2019-12-11 16:53   ` [alsa-devel] Applied "ASoC: meson: Use managed buffer allocation" to the asoc tree Mark Brown
2019-12-10 14:25 ` [alsa-devel] [PATCH for-5.6 06/23] ASoC: dma-sh7760: Use managed buffer allocation Takashi Iwai
2019-12-11 16:53   ` [alsa-devel] Applied "ASoC: dma-sh7760: Use managed buffer allocation" to the asoc tree Mark Brown
2019-12-10 14:25 ` [alsa-devel] [PATCH for-5.6 07/23] ASoC: fsi: Use managed buffer allocation Takashi Iwai
2019-12-11 16:53   ` [alsa-devel] Applied "ASoC: fsi: Use managed buffer allocation" to the asoc tree Mark Brown
2019-12-10 14:25 ` [alsa-devel] [PATCH for-5.6 08/23] ASoC: rcar: Use managed buffer allocation Takashi Iwai
2019-12-11 16:53   ` [alsa-devel] Applied "ASoC: rcar: Use managed buffer allocation" to the asoc tree Mark Brown
2019-12-10 14:26 ` [alsa-devel] [PATCH for-5.6 09/23] ASoC: siu_pcm: Use managed buffer allocation Takashi Iwai
2019-12-11 16:53   ` [alsa-devel] Applied "ASoC: siu_pcm: Use managed buffer allocation" to the asoc tree Mark Brown
2019-12-10 14:26 ` [alsa-devel] [PATCH for-5.6 10/23] ASoC: generic-dmaengine-pcm: Use managed buffer allocation Takashi Iwai
2019-12-11 16:53   ` [alsa-devel] Applied "ASoC: generic-dmaengine-pcm: Use managed buffer allocation" to the asoc tree Mark Brown
2019-12-10 14:26 ` [alsa-devel] [PATCH for-5.6 11/23] ASoC: SOF: Use managed buffer allocation Takashi Iwai
2019-12-11 16:47   ` Mark Brown
2019-12-10 14:26 ` [alsa-devel] [PATCH for-5.6 12/23] ASoC: stm32: " Takashi Iwai
2019-12-11 16:53   ` [alsa-devel] Applied "ASoC: stm32: Use managed buffer allocation" to the asoc tree Mark Brown
2019-12-10 14:26 ` [alsa-devel] [PATCH for-5.6 13/23] ASoC: txx9: Use managed buffer allocation Takashi Iwai
2019-12-11 16:53   ` [alsa-devel] Applied "ASoC: txx9: Use managed buffer allocation" to the asoc tree Mark Brown
2019-12-10 14:26 ` [alsa-devel] [PATCH for-5.6 14/23] ASoC: uniphier: Use managed buffer allocation Takashi Iwai
2019-12-11 16:53   ` [alsa-devel] Applied "ASoC: uniphier: Use managed buffer allocation" to the asoc tree Mark Brown
2019-12-10 14:26 ` [alsa-devel] [PATCH for-5.6 15/23] ASoC: xilinx: Use managed buffer allocation Takashi Iwai
2019-12-11 16:53   ` [alsa-devel] Applied "ASoC: xilinx: Use managed buffer allocation" to the asoc tree Mark Brown
2019-12-10 14:26 ` [alsa-devel] [PATCH for-5.6 16/23] ASoC: xtensa: Use managed buffer allocation Takashi Iwai
2019-12-11 16:53   ` [alsa-devel] Applied "ASoC: xtensa: Use managed buffer allocation" to the asoc tree Mark Brown
2019-12-10 14:26 ` [alsa-devel] [PATCH for-5.6 17/23] ASoC: cros_ec_codec: Use managed buffer allocation Takashi Iwai
2019-12-11 16:53   ` [alsa-devel] Applied "ASoC: cros_ec_codec: Use managed buffer allocation" to the asoc tree Mark Brown
2019-12-10 14:26 ` [alsa-devel] [PATCH for-5.6 18/23] ASoC: rt5514-spi: Use managed buffer allocation Takashi Iwai
2019-12-11 16:53   ` [alsa-devel] Applied "ASoC: rt5514-spi: Use managed buffer allocation" to the asoc tree Mark Brown
2019-12-10 14:26 ` [alsa-devel] [PATCH for-5.6 19/23] ASoC: rt5677-spi: Use managed buffer allocation Takashi Iwai
2019-12-11 16:53   ` [alsa-devel] Applied "ASoC: rt5677-spi: Use managed buffer allocation" to the asoc tree Mark Brown
2019-12-10 14:26 ` [alsa-devel] [PATCH for-5.6 20/23] ASoC: intel: atom: Use managed buffer allocation Takashi Iwai
2019-12-11 16:53   ` [alsa-devel] Applied "ASoC: intel: atom: Use managed buffer allocation" to the asoc tree Mark Brown
2019-12-10 14:26 ` [alsa-devel] [PATCH for-5.6 21/23] ASoC: intel: baytrail: Use managed buffer allocation Takashi Iwai
2019-12-11 16:53   ` [alsa-devel] Applied "ASoC: intel: baytrail: Use managed buffer allocation" to the asoc tree Mark Brown
2019-12-10 14:26 ` [alsa-devel] [PATCH for-5.6 22/23] ASoC: intel: haswell: Use managed buffer allocation Takashi Iwai
2019-12-11 16:53   ` [alsa-devel] Applied "ASoC: intel: haswell: Use managed buffer allocation" to the asoc tree Mark Brown
2019-12-10 14:26 ` [alsa-devel] [PATCH for-5.6 23/23] ASoC: intel: skylake: Use managed buffer allocation Takashi Iwai
2019-12-11 16:53   ` [alsa-devel] Applied "ASoC: intel: skylake: Use managed buffer allocation" to the asoc tree Mark Brown

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20191210142614.19405-3-tiwai@suse.de \
    --to=tiwai@suse.de \
    --cc=alsa-devel@alsa-project.org \
    --cc=broonie@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.