Lines Matching refs:out

158 	    find_first_zero_bit(&line6pcm->out.active_urbs, LINE6_ISO_BUFFERS);  in submit_audio_out_urb()
165 urb_out = line6pcm->out.urbs[index]; in submit_audio_out_urb()
178 line6pcm->out.count += frame_increment; in submit_audio_out_urb()
179 n = line6pcm->out.count / frame_factor; in submit_audio_out_urb()
180 line6pcm->out.count -= n * frame_factor; in submit_audio_out_urb()
197 line6pcm->out.buffer + in submit_audio_out_urb()
202 if (test_bit(LINE6_STREAM_PCM, &line6pcm->out.running) && in submit_audio_out_urb()
207 if (line6pcm->out.pos + urb_frames > runtime->buffer_size) { in submit_audio_out_urb()
214 len = runtime->buffer_size - line6pcm->out.pos; in submit_audio_out_urb()
219 line6pcm->out.pos * bytes_per_frame, in submit_audio_out_urb()
230 line6pcm->out.pos * bytes_per_frame, in submit_audio_out_urb()
234 line6pcm->out.pos += urb_frames; in submit_audio_out_urb()
235 if (line6pcm->out.pos >= runtime->buffer_size) in submit_audio_out_urb()
236 line6pcm->out.pos -= runtime->buffer_size; in submit_audio_out_urb()
247 if (test_bit(LINE6_STREAM_IMPULSE, &line6pcm->out.running)) { in submit_audio_out_urb()
260 && line6pcm->out.running && line6pcm->in.running) in submit_audio_out_urb()
273 set_bit(index, &line6pcm->out.active_urbs); in submit_audio_out_urb()
313 line6pcm->out.last_frame = urb->start_frame; in audio_out_callback()
317 if (urb == line6pcm->out.urbs[index]) in audio_out_callback()
326 spin_lock_irqsave(&line6pcm->out.lock, flags); in audio_out_callback()
328 if (test_bit(LINE6_STREAM_PCM, &line6pcm->out.running)) { in audio_out_callback()
331 line6pcm->out.pos_done += in audio_out_callback()
334 if (line6pcm->out.pos_done >= runtime->buffer_size) in audio_out_callback()
335 line6pcm->out.pos_done -= runtime->buffer_size; in audio_out_callback()
338 clear_bit(index, &line6pcm->out.active_urbs); in audio_out_callback()
346 if (test_and_clear_bit(index, &line6pcm->out.unlink_urbs)) in audio_out_callback()
352 if (test_bit(LINE6_STREAM_PCM, &line6pcm->out.running)) { in audio_out_callback()
353 line6pcm->out.bytes += length; in audio_out_callback()
354 if (line6pcm->out.bytes >= line6pcm->out.period) { in audio_out_callback()
355 line6pcm->out.bytes %= line6pcm->out.period; in audio_out_callback()
356 spin_unlock(&line6pcm->out.lock); in audio_out_callback()
358 spin_lock(&line6pcm->out.lock); in audio_out_callback()
362 spin_unlock_irqrestore(&line6pcm->out.lock, flags); in audio_out_callback()
409 urb = line6pcm->out.urbs[i] = in line6_create_audio_out_urbs()