Lines Matching refs:urb
123 struct urb urb; member
181 static void playback_urb_complete(struct urb *usb_urb) in playback_urb_complete()
183 struct ua101_urb *urb = (struct ua101_urb *)usb_urb; in playback_urb_complete() local
184 struct ua101 *ua = urb->urb.context; in playback_urb_complete()
187 if (unlikely(urb->urb.status == -ENOENT || /* unlinked */ in playback_urb_complete()
188 urb->urb.status == -ENODEV || /* device removed */ in playback_urb_complete()
189 urb->urb.status == -ECONNRESET || /* unlinked */ in playback_urb_complete()
190 urb->urb.status == -ESHUTDOWN)) { /* device disabled */ in playback_urb_complete()
199 list_add_tail(&urb->ready_list, &ua->ready_playback_urbs); in playback_urb_complete()
203 urb->urb.iso_frame_desc[0].length / in playback_urb_complete()
209 static void first_playback_urb_complete(struct urb *urb) in first_playback_urb_complete() argument
211 struct ua101 *ua = urb->context; in first_playback_urb_complete()
213 urb->complete = playback_urb_complete; in first_playback_urb_complete()
214 playback_urb_complete(urb); in first_playback_urb_complete()
221 static bool copy_playback_data(struct ua101_stream *stream, struct urb *urb, in copy_playback_data() argument
232 memcpy(urb->transfer_buffer, source, frames * frame_bytes); in copy_playback_data()
236 memcpy(urb->transfer_buffer, source, frames1 * frame_bytes); in copy_playback_data()
237 memcpy(urb->transfer_buffer + frames1 * frame_bytes, in copy_playback_data()
265 struct ua101_urb *urb; in playback_tasklet() local
292 urb = list_first_entry(&ua->ready_playback_urbs, in playback_tasklet()
294 list_del(&urb->ready_list); in playback_tasklet()
297 urb->urb.iso_frame_desc[0].length = in playback_tasklet()
301 &urb->urb, in playback_tasklet()
304 memset(urb->urb.transfer_buffer, 0, in playback_tasklet()
305 urb->urb.iso_frame_desc[0].length); in playback_tasklet()
308 err = usb_submit_urb(&urb->urb, GFP_ATOMIC); in playback_tasklet()
325 static bool copy_capture_data(struct ua101_stream *stream, struct urb *urb, in copy_capture_data() argument
336 memcpy(dest, urb->transfer_buffer, frames * frame_bytes); in copy_capture_data()
340 memcpy(dest, urb->transfer_buffer, frames1 * frame_bytes); in copy_capture_data()
342 urb->transfer_buffer + frames1 * frame_bytes, in copy_capture_data()
357 static void capture_urb_complete(struct urb *urb) in capture_urb_complete() argument
359 struct ua101 *ua = urb->context; in capture_urb_complete()
366 if (unlikely(urb->status == -ENOENT || /* unlinked */ in capture_urb_complete()
367 urb->status == -ENODEV || /* device removed */ in capture_urb_complete()
368 urb->status == -ECONNRESET || /* unlinked */ in capture_urb_complete()
369 urb->status == -ESHUTDOWN)) /* device disabled */ in capture_urb_complete()
372 if (urb->status >= 0 && urb->iso_frame_desc[0].status >= 0) in capture_urb_complete()
373 frames = urb->iso_frame_desc[0].actual_length / in capture_urb_complete()
381 do_period_elapsed = copy_capture_data(stream, urb, frames); in capture_urb_complete()
386 err = usb_submit_urb(urb, GFP_ATOMIC); in capture_urb_complete()
431 static void first_capture_urb_complete(struct urb *urb) in first_capture_urb_complete() argument
433 struct ua101 *ua = urb->context; in first_capture_urb_complete()
435 urb->complete = capture_urb_complete; in first_capture_urb_complete()
436 capture_urb_complete(urb); in first_capture_urb_complete()
447 int err = usb_submit_urb(&stream->urbs[i]->urb, GFP_KERNEL); in submit_stream_urbs()
463 usb_kill_urb(&stream->urbs[i]->urb); in kill_stream_urbs()
528 ua->capture.urbs[0]->urb.complete = first_capture_urb_complete; in start_usb_capture()
553 struct urb *urb; in start_usb_playback() local
570 ua->playback.urbs[0]->urb.complete = in start_usb_playback()
600 urb = &ua->playback.urbs[i]->urb; in start_usb_playback()
601 urb->iso_frame_desc[0].length = in start_usb_playback()
603 memset(urb->transfer_buffer, 0, in start_usb_playback()
604 urb->iso_frame_desc[0].length); in start_usb_playback()
1103 void (*urb_complete)(struct urb *)) in alloc_stream_urbs() argument
1106 struct ua101_urb *urb; in alloc_stream_urbs() local
1117 urb = kmalloc(sizeof(*urb), GFP_KERNEL); in alloc_stream_urbs()
1118 if (!urb) in alloc_stream_urbs()
1120 usb_init_urb(&urb->urb); in alloc_stream_urbs()
1121 urb->urb.dev = ua->dev; in alloc_stream_urbs()
1122 urb->urb.pipe = stream->usb_pipe; in alloc_stream_urbs()
1123 urb->urb.transfer_flags = URB_NO_TRANSFER_DMA_MAP; in alloc_stream_urbs()
1124 urb->urb.transfer_buffer = addr; in alloc_stream_urbs()
1125 urb->urb.transfer_dma = dma; in alloc_stream_urbs()
1126 urb->urb.transfer_buffer_length = max_packet_size; in alloc_stream_urbs()
1127 urb->urb.number_of_packets = 1; in alloc_stream_urbs()
1128 urb->urb.interval = 1; in alloc_stream_urbs()
1129 urb->urb.context = ua; in alloc_stream_urbs()
1130 urb->urb.complete = urb_complete; in alloc_stream_urbs()
1131 urb->urb.iso_frame_desc[0].offset = 0; in alloc_stream_urbs()
1132 urb->urb.iso_frame_desc[0].length = max_packet_size; in alloc_stream_urbs()
1133 stream->urbs[u++] = urb; in alloc_stream_urbs()