diff options
author | Takashi Iwai <tiwai@suse.de> | 2012-11-23 14:28:42 +0100 |
---|---|---|
committer | Takashi Iwai <tiwai@suse.de> | 2012-11-23 15:37:32 +0100 |
commit | 3f94fad09538ec988919ec3f371841182df71d04 (patch) | |
tree | c37b1d2d412850ae03c0d4ffc9a8cd585eab866a /sound/usb/pcm.c | |
parent | ffe4d12b151018e831f0ca2e05fe78a55238c517 (diff) | |
download | linux-3f94fad09538ec988919ec3f371841182df71d04.tar.bz2 |
ALSA: usb-audio: ignore delay calculation for capture stream
It doesn't make sense to calculate the delay for capture streams in
the current implementation. It's always zero, so we should skip the
computation in snd_usb_pcm_pointer() in the case of capture.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/usb/pcm.c')
-rw-r--r-- | sound/usb/pcm.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/sound/usb/pcm.c b/sound/usb/pcm.c index e919c2e40fa0..8e1d5e00c182 100644 --- a/sound/usb/pcm.c +++ b/sound/usb/pcm.c @@ -75,7 +75,8 @@ static snd_pcm_uframes_t snd_usb_pcm_pointer(struct snd_pcm_substream *substream return SNDRV_PCM_POS_XRUN; spin_lock(&subs->lock); hwptr_done = subs->hwptr_done; - substream->runtime->delay = snd_usb_pcm_delay(subs, + if (substream->stream == SNDRV_PCM_STREAM_PLAYBACK) + substream->runtime->delay = snd_usb_pcm_delay(subs, substream->runtime->rate); spin_unlock(&subs->lock); return hwptr_done / (substream->runtime->frame_bits >> 3); |