diff options
Diffstat (limited to 'sound/usb/caiaq/audio.c')
-rw-r--r-- | sound/usb/caiaq/audio.c | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/sound/usb/caiaq/audio.c b/sound/usb/caiaq/audio.c index 3f45c0fe61ab..b13ce767ac72 100644 --- a/sound/usb/caiaq/audio.c +++ b/sound/usb/caiaq/audio.c | |||
@@ -195,11 +195,14 @@ static int snd_usb_caiaq_pcm_prepare(struct snd_pcm_substream *substream) | |||
195 | 195 | ||
196 | debug("%s(%p)\n", __func__, substream); | 196 | debug("%s(%p)\n", __func__, substream); |
197 | 197 | ||
198 | if (substream->stream == SNDRV_PCM_STREAM_PLAYBACK) | 198 | if (substream->stream == SNDRV_PCM_STREAM_PLAYBACK) { |
199 | dev->period_out_count[index] = BYTES_PER_SAMPLE + 1; | ||
199 | dev->audio_out_buf_pos[index] = BYTES_PER_SAMPLE + 1; | 200 | dev->audio_out_buf_pos[index] = BYTES_PER_SAMPLE + 1; |
200 | else | 201 | } else { |
202 | dev->period_in_count[index] = BYTES_PER_SAMPLE; | ||
201 | dev->audio_in_buf_pos[index] = BYTES_PER_SAMPLE; | 203 | dev->audio_in_buf_pos[index] = BYTES_PER_SAMPLE; |
202 | 204 | } | |
205 | |||
203 | if (dev->streaming) | 206 | if (dev->streaming) |
204 | return 0; | 207 | return 0; |
205 | 208 | ||
@@ -300,8 +303,7 @@ static void check_for_elapsed_periods(struct snd_usb_caiaqdev *dev, | |||
300 | if (!sub) | 303 | if (!sub) |
301 | continue; | 304 | continue; |
302 | 305 | ||
303 | pb = frames_to_bytes(sub->runtime, | 306 | pb = snd_pcm_lib_period_bytes(sub); |
304 | sub->runtime->period_size); | ||
305 | cnt = (sub->stream == SNDRV_PCM_STREAM_PLAYBACK) ? | 307 | cnt = (sub->stream == SNDRV_PCM_STREAM_PLAYBACK) ? |
306 | &dev->period_out_count[stream] : | 308 | &dev->period_out_count[stream] : |
307 | &dev->period_in_count[stream]; | 309 | &dev->period_in_count[stream]; |