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 | |
parent | ffe4d12b151018e831f0ca2e05fe78a55238c517 (diff) | |
download | op-kernel-dev-3f94fad09538ec988919ec3f371841182df71d04.zip op-kernel-dev-3f94fad09538ec988919ec3f371841182df71d04.tar.gz |
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')
-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 e919c2e..8e1d5e0 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); |