From: Jaroslav Kysela Date: Tue, 16 Feb 2010 10:55:43 +0000 (+0100) Subject: ALSA: pcm core - fix fifo_size channels interval check X-Git-Tag: v2.6.32.10~70 X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=8ae96d4bb9ad09d3d6fe236d65c1cbdd989327de;p=karo-tx-linux.git ALSA: pcm core - fix fifo_size channels interval check commit 3be522a9514f58e0596db34898a514df206cadc5 upstream. Signed-off-by: Jaroslav Kysela Signed-off-by: Greg Kroah-Hartman --- diff --git a/sound/core/pcm_native.c b/sound/core/pcm_native.c index ab73edf2c89a..7ba779d9e2e7 100644 --- a/sound/core/pcm_native.c +++ b/sound/core/pcm_native.c @@ -314,10 +314,10 @@ int snd_pcm_hw_refine(struct snd_pcm_substream *substream, if (!params->info) params->info = hw->info & ~SNDRV_PCM_INFO_FIFO_IN_FRAMES; if (!params->fifo_size) { - if (snd_mask_min(¶ms->masks[SNDRV_PCM_HW_PARAM_FORMAT]) == - snd_mask_max(¶ms->masks[SNDRV_PCM_HW_PARAM_FORMAT]) && - snd_mask_min(¶ms->masks[SNDRV_PCM_HW_PARAM_CHANNELS]) == - snd_mask_max(¶ms->masks[SNDRV_PCM_HW_PARAM_CHANNELS])) { + m = hw_param_mask(params, SNDRV_PCM_HW_PARAM_FORMAT); + i = hw_param_interval(params, SNDRV_PCM_HW_PARAM_CHANNELS); + if (snd_mask_min(m) == snd_mask_max(m) && + snd_interval_min(i) == snd_interval_max(i)) { changed = substream->ops->ioctl(substream, SNDRV_PCM_IOCTL1_FIFO_SIZE, params); if (changed < 0)