diff options
author | Takashi Iwai <tiwai@suse.de> | 2019-12-09 10:49:43 +0100 |
---|---|---|
committer | Takashi Iwai <tiwai@suse.de> | 2019-12-11 07:25:25 +0100 |
commit | cc6c69126e38d3880b72400cfe29e52cc1a7fa2b (patch) | |
tree | ae3759e20d5dcb0d27d7aa94e8a0b9c37ce009ab | |
parent | dd21bf512b648b7f5241557b59f8fd22221e2f76 (diff) | |
download | lwn-cc6c69126e38d3880b72400cfe29e52cc1a7fa2b.tar.gz lwn-cc6c69126e38d3880b72400cfe29e52cc1a7fa2b.zip |
ALSA: hdml-lpe-audio: 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.
Link: https://lore.kernel.org/r/20191209094943.14984-72-tiwai@suse.de
Signed-off-by: Takashi Iwai <tiwai@suse.de>
-rw-r--r-- | sound/x86/intel_hdmi_audio.c | 16 |
1 files changed, 6 insertions, 10 deletions
diff --git a/sound/x86/intel_hdmi_audio.c b/sound/x86/intel_hdmi_audio.c index cd389d21219a..a67692ca08af 100644 --- a/sound/x86/intel_hdmi_audio.c +++ b/sound/x86/intel_hdmi_audio.c @@ -1132,16 +1132,13 @@ static int had_pcm_hw_params(struct snd_pcm_substream *substream, struct snd_pcm_hw_params *hw_params) { struct snd_intelhad *intelhaddata; - int buf_size, retval; + int buf_size; intelhaddata = snd_pcm_substream_chip(substream); buf_size = params_buffer_bytes(hw_params); - retval = snd_pcm_lib_malloc_pages(substream, buf_size); - if (retval < 0) - return retval; dev_dbg(intelhaddata->dev, "%s:allocated memory = %d\n", __func__, buf_size); - return retval; + return 0; } /* @@ -1154,7 +1151,7 @@ static int had_pcm_hw_free(struct snd_pcm_substream *substream) intelhaddata = snd_pcm_substream_chip(substream); had_do_reset(intelhaddata); - return snd_pcm_lib_free_pages(substream); + return 0; } /* @@ -1801,10 +1798,9 @@ static int hdmi_lpe_audio_probe(struct platform_device *pdev) /* allocate dma pages; * try to allocate 600k buffer as default which is large enough */ - snd_pcm_lib_preallocate_pages_for_all(pcm, - SNDRV_DMA_TYPE_DEV_UC, - card->dev, - HAD_DEFAULT_BUFFER, HAD_MAX_BUFFER); + snd_pcm_set_managed_buffer_all(pcm, SNDRV_DMA_TYPE_DEV_UC, + card->dev, HAD_DEFAULT_BUFFER, + HAD_MAX_BUFFER); /* create controls */ for (i = 0; i < ARRAY_SIZE(had_controls); i++) { |