Lines Matching refs:urb
119 static void int_irq(struct urb *urb) in int_irq() argument
121 struct gspca_dev *gspca_dev = (struct gspca_dev *) urb->context; in int_irq()
124 ret = urb->status; in int_irq()
128 urb->transfer_buffer, urb->actual_length) < 0) { in int_irq()
143 PERR("URB error %i, resubmitting", urb->status); in int_irq()
144 urb->status = 0; in int_irq()
149 ret = usb_submit_urb(urb, GFP_ATOMIC); in int_irq()
197 struct urb *urb; in alloc_and_submit_int_urb() local
210 urb = usb_alloc_urb(0, GFP_KERNEL); in alloc_and_submit_int_urb()
211 if (!urb) { in alloc_and_submit_int_urb()
217 GFP_KERNEL, &urb->transfer_dma); in alloc_and_submit_int_urb()
222 usb_fill_int_urb(urb, dev, in alloc_and_submit_int_urb()
226 urb->transfer_flags |= URB_NO_TRANSFER_DMA_MAP; in alloc_and_submit_int_urb()
227 ret = usb_submit_urb(urb, GFP_KERNEL); in alloc_and_submit_int_urb()
232 gspca_dev->int_urb = urb; in alloc_and_submit_int_urb()
237 urb->transfer_buffer_length, in alloc_and_submit_int_urb()
238 urb->transfer_buffer, in alloc_and_submit_int_urb()
239 urb->transfer_dma); in alloc_and_submit_int_urb()
241 usb_free_urb(urb); in alloc_and_submit_int_urb()
270 struct urb *urb; in gspca_input_destroy_urb() local
272 urb = gspca_dev->int_urb; in gspca_input_destroy_urb()
273 if (urb) { in gspca_input_destroy_urb()
275 usb_kill_urb(urb); in gspca_input_destroy_urb()
277 urb->transfer_buffer_length, in gspca_input_destroy_urb()
278 urb->transfer_buffer, in gspca_input_destroy_urb()
279 urb->transfer_dma); in gspca_input_destroy_urb()
280 usb_free_urb(urb); in gspca_input_destroy_urb()
302 struct urb *urb) in fill_frame() argument
308 if (urb->status != 0) { in fill_frame()
309 if (urb->status == -ESHUTDOWN) in fill_frame()
315 PERR("urb status: %d", urb->status); in fill_frame()
316 urb->status = 0; in fill_frame()
320 for (i = 0; i < urb->number_of_packets; i++) { in fill_frame()
321 len = urb->iso_frame_desc[i].actual_length; in fill_frame()
324 st = urb->iso_frame_desc[i].status; in fill_frame()
339 i, urb->iso_frame_desc[i].offset, len); in fill_frame()
340 data = (u8 *) urb->transfer_buffer in fill_frame()
341 + urb->iso_frame_desc[i].offset; in fill_frame()
347 st = usb_submit_urb(urb, GFP_ATOMIC); in fill_frame()
357 static void isoc_irq(struct urb *urb) in isoc_irq() argument
359 struct gspca_dev *gspca_dev = (struct gspca_dev *) urb->context; in isoc_irq()
364 fill_frame(gspca_dev, urb); in isoc_irq()
370 static void bulk_irq(struct urb *urb) in bulk_irq() argument
372 struct gspca_dev *gspca_dev = (struct gspca_dev *) urb->context; in bulk_irq()
378 switch (urb->status) { in bulk_irq()
388 PERR("urb status: %d", urb->status); in bulk_irq()
389 urb->status = 0; in bulk_irq()
393 PDEBUG(D_PACK, "packet l:%d", urb->actual_length); in bulk_irq()
395 urb->transfer_buffer, in bulk_irq()
396 urb->actual_length); in bulk_irq()
401 st = usb_submit_urb(urb, GFP_ATOMIC); in bulk_irq()
558 struct urb *urb; in destroy_urbs() local
563 urb = gspca_dev->urb[i]; in destroy_urbs()
564 if (urb == NULL) in destroy_urbs()
567 gspca_dev->urb[i] = NULL; in destroy_urbs()
568 usb_kill_urb(urb); in destroy_urbs()
570 urb->transfer_buffer_length, in destroy_urbs()
571 urb->transfer_buffer, in destroy_urbs()
572 urb->transfer_dma); in destroy_urbs()
573 usb_free_urb(urb); in destroy_urbs()
763 struct urb *urb; in create_urbs() local
797 urb = usb_alloc_urb(npkt, GFP_KERNEL); in create_urbs()
798 if (!urb) { in create_urbs()
802 gspca_dev->urb[n] = urb; in create_urbs()
803 urb->transfer_buffer = usb_alloc_coherent(gspca_dev->dev, in create_urbs()
806 &urb->transfer_dma); in create_urbs()
808 if (urb->transfer_buffer == NULL) { in create_urbs()
812 urb->dev = gspca_dev->dev; in create_urbs()
813 urb->context = gspca_dev; in create_urbs()
814 urb->transfer_buffer_length = bsize; in create_urbs()
816 urb->pipe = usb_rcvisocpipe(gspca_dev->dev, in create_urbs()
818 urb->transfer_flags = URB_ISO_ASAP in create_urbs()
820 urb->interval = 1 << (ep->desc.bInterval - 1); in create_urbs()
821 urb->complete = isoc_irq; in create_urbs()
822 urb->number_of_packets = npkt; in create_urbs()
824 urb->iso_frame_desc[i].length = psize; in create_urbs()
825 urb->iso_frame_desc[i].offset = psize * i; in create_urbs()
828 urb->pipe = usb_rcvbulkpipe(gspca_dev->dev, in create_urbs()
830 urb->transfer_flags = URB_NO_TRANSFER_DMA_MAP; in create_urbs()
831 urb->complete = bulk_irq; in create_urbs()
844 struct urb *urb; in gspca_init_transfer() local
923 gspca_dev->urb[0]->pipe); in gspca_init_transfer()
940 urb = gspca_dev->urb[n]; in gspca_init_transfer()
941 if (urb == NULL) in gspca_init_transfer()
943 ret = usb_submit_urb(urb, GFP_KERNEL); in gspca_init_transfer()