OSDN Git Service

ASoC: generic-dmaengine-pcm: Use managed buffer allocation
authorTakashi Iwai <tiwai@suse.de>
Tue, 10 Dec 2019 14:26:01 +0000 (15:26 +0100)
committerMark Brown <broonie@kernel.org>
Wed, 11 Dec 2019 16:43:23 +0000 (16:43 +0000)
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: Takashi Iwai <tiwai@suse.de>
Link: https://lore.kernel.org/r/20191210142614.19405-11-tiwai@suse.de
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/soc-generic-dmaengine-pcm.c

index 4616cab..df57ec4 100644 (file)
@@ -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,