ALSA: bt87x: 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-29-tiwai@suse.de
Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
Takashi Iwai 2019-12-09 10:49:00 +01:00
parent 830e7b0076
commit b87ddad277
1 changed files with 4 additions and 10 deletions

View File

@ -452,12 +452,7 @@ static int snd_bt87x_hw_params(struct snd_pcm_substream *substream,
struct snd_pcm_hw_params *hw_params) struct snd_pcm_hw_params *hw_params)
{ {
struct snd_bt87x *chip = snd_pcm_substream_chip(substream); struct snd_bt87x *chip = snd_pcm_substream_chip(substream);
int err;
err = snd_pcm_lib_malloc_pages(substream,
params_buffer_bytes(hw_params));
if (err < 0)
return err;
return snd_bt87x_create_risc(chip, substream, return snd_bt87x_create_risc(chip, substream,
params_periods(hw_params), params_periods(hw_params),
params_period_bytes(hw_params)); params_period_bytes(hw_params));
@ -468,7 +463,6 @@ static int snd_bt87x_hw_free(struct snd_pcm_substream *substream)
struct snd_bt87x *chip = snd_pcm_substream_chip(substream); struct snd_bt87x *chip = snd_pcm_substream_chip(substream);
snd_bt87x_free_risc(chip); snd_bt87x_free_risc(chip);
snd_pcm_lib_free_pages(substream);
return 0; return 0;
} }
@ -699,7 +693,7 @@ static int snd_bt87x_pcm(struct snd_bt87x *chip, int device, char *name)
pcm->private_data = chip; pcm->private_data = chip;
strcpy(pcm->name, name); strcpy(pcm->name, name);
snd_pcm_set_ops(pcm, SNDRV_PCM_STREAM_CAPTURE, &snd_bt87x_pcm_ops); snd_pcm_set_ops(pcm, SNDRV_PCM_STREAM_CAPTURE, &snd_bt87x_pcm_ops);
snd_pcm_lib_preallocate_pages_for_all(pcm, SNDRV_DMA_TYPE_DEV_SG, snd_pcm_set_managed_buffer_all(pcm, SNDRV_DMA_TYPE_DEV_SG,
&chip->pci->dev, &chip->pci->dev,
128 * 1024, 128 * 1024,
ALIGN(255 * 4092, 1024)); ALIGN(255 * 4092, 1024));