Lines Matching refs:urb

784 static void cx231xx_isoc_irq_callback(struct urb *urb)  in cx231xx_isoc_irq_callback()  argument
786 struct cx231xx_dmaqueue *dma_q = urb->context; in cx231xx_isoc_irq_callback()
792 switch (urb->status) { in cx231xx_isoc_irq_callback()
801 cx231xx_isocdbg("urb completition error %d.\n", urb->status); in cx231xx_isoc_irq_callback()
807 dev->video_mode.isoc_ctl.isoc_copy(dev, urb); in cx231xx_isoc_irq_callback()
811 for (i = 0; i < urb->number_of_packets; i++) { in cx231xx_isoc_irq_callback()
812 urb->iso_frame_desc[i].status = 0; in cx231xx_isoc_irq_callback()
813 urb->iso_frame_desc[i].actual_length = 0; in cx231xx_isoc_irq_callback()
816 urb->status = usb_submit_urb(urb, GFP_ATOMIC); in cx231xx_isoc_irq_callback()
817 if (urb->status) { in cx231xx_isoc_irq_callback()
819 urb->status); in cx231xx_isoc_irq_callback()
829 static void cx231xx_bulk_irq_callback(struct urb *urb) in cx231xx_bulk_irq_callback() argument
831 struct cx231xx_dmaqueue *dma_q = urb->context; in cx231xx_bulk_irq_callback()
836 switch (urb->status) { in cx231xx_bulk_irq_callback()
845 cx231xx_isocdbg("urb completition error %d.\n", urb->status); in cx231xx_bulk_irq_callback()
851 dev->video_mode.bulk_ctl.bulk_copy(dev, urb); in cx231xx_bulk_irq_callback()
855 urb->status = usb_submit_urb(urb, GFP_ATOMIC); in cx231xx_bulk_irq_callback()
856 if (urb->status) { in cx231xx_bulk_irq_callback()
858 urb->status); in cx231xx_bulk_irq_callback()
867 struct urb *urb; in cx231xx_uninit_isoc() local
874 urb = dev->video_mode.isoc_ctl.urb[i]; in cx231xx_uninit_isoc()
875 if (urb) { in cx231xx_uninit_isoc()
877 usb_kill_urb(urb); in cx231xx_uninit_isoc()
879 usb_unlink_urb(urb); in cx231xx_uninit_isoc()
883 urb->transfer_buffer_length, in cx231xx_uninit_isoc()
886 urb->transfer_dma); in cx231xx_uninit_isoc()
888 usb_free_urb(urb); in cx231xx_uninit_isoc()
889 dev->video_mode.isoc_ctl.urb[i] = NULL; in cx231xx_uninit_isoc()
894 kfree(dev->video_mode.isoc_ctl.urb); in cx231xx_uninit_isoc()
898 dev->video_mode.isoc_ctl.urb = NULL; in cx231xx_uninit_isoc()
917 struct urb *urb; in cx231xx_uninit_bulk() local
924 urb = dev->video_mode.bulk_ctl.urb[i]; in cx231xx_uninit_bulk()
925 if (urb) { in cx231xx_uninit_bulk()
927 usb_kill_urb(urb); in cx231xx_uninit_bulk()
929 usb_unlink_urb(urb); in cx231xx_uninit_bulk()
933 urb->transfer_buffer_length, in cx231xx_uninit_bulk()
936 urb->transfer_dma); in cx231xx_uninit_bulk()
938 usb_free_urb(urb); in cx231xx_uninit_bulk()
939 dev->video_mode.bulk_ctl.urb[i] = NULL; in cx231xx_uninit_bulk()
944 kfree(dev->video_mode.bulk_ctl.urb); in cx231xx_uninit_bulk()
947 dev->video_mode.bulk_ctl.urb = NULL; in cx231xx_uninit_bulk()
965 int (*isoc_copy) (struct cx231xx *dev, struct urb *urb)) in cx231xx_init_isoc() argument
970 struct urb *urb; in cx231xx_init_isoc() local
1002 dev->video_mode.isoc_ctl.urb = in cx231xx_init_isoc()
1004 if (!dev->video_mode.isoc_ctl.urb) { in cx231xx_init_isoc()
1015 kfree(dev->video_mode.isoc_ctl.urb); in cx231xx_init_isoc()
1032 urb = usb_alloc_urb(max_packets, GFP_KERNEL); in cx231xx_init_isoc()
1033 if (!urb) { in cx231xx_init_isoc()
1039 dev->video_mode.isoc_ctl.urb[i] = urb; in cx231xx_init_isoc()
1043 &urb->transfer_dma); in cx231xx_init_isoc()
1057 usb_fill_int_urb(urb, dev->udev, pipe, in cx231xx_init_isoc()
1061 urb->number_of_packets = max_packets; in cx231xx_init_isoc()
1062 urb->transfer_flags = URB_ISO_ASAP | URB_NO_TRANSFER_DMA_MAP; in cx231xx_init_isoc()
1066 urb->iso_frame_desc[j].offset = k; in cx231xx_init_isoc()
1067 urb->iso_frame_desc[j].length = in cx231xx_init_isoc()
1077 rc = usb_submit_urb(dev->video_mode.isoc_ctl.urb[i], in cx231xx_init_isoc()
1102 int (*bulk_copy) (struct cx231xx *dev, struct urb *urb)) in cx231xx_init_bulk() argument
1107 struct urb *urb; in cx231xx_init_bulk() local
1139 dev->video_mode.bulk_ctl.urb = in cx231xx_init_bulk()
1141 if (!dev->video_mode.bulk_ctl.urb) { in cx231xx_init_bulk()
1152 kfree(dev->video_mode.bulk_ctl.urb); in cx231xx_init_bulk()
1169 urb = usb_alloc_urb(0, GFP_KERNEL); in cx231xx_init_bulk()
1170 if (!urb) { in cx231xx_init_bulk()
1176 dev->video_mode.bulk_ctl.urb[i] = urb; in cx231xx_init_bulk()
1177 urb->transfer_flags = URB_NO_TRANSFER_DMA_MAP; in cx231xx_init_bulk()
1181 &urb->transfer_dma); in cx231xx_init_bulk()
1194 usb_fill_bulk_urb(urb, dev->udev, pipe, in cx231xx_init_bulk()
1203 rc = usb_submit_urb(dev->video_mode.bulk_ctl.urb[i], in cx231xx_init_bulk()