Lines Matching refs:urb
38 struct urb *last_data_urb;
75 static void sd_isoc_irq(struct urb *urb);
171 struct urb *urb;
205 urb = usb_alloc_urb(SD_NPKT, GFP_KERNEL);
206 if (!urb)
208 gspca_dev->urb[n] = urb;
209 urb->transfer_buffer = usb_alloc_coherent(gspca_dev->dev,
212 &urb->transfer_dma);
213 if (urb->transfer_buffer == NULL) {
218 urb->dev = gspca_dev->dev;
219 urb->context = gspca_dev;
220 urb->transfer_buffer_length = packet_size * SD_NPKT;
221 urb->pipe = usb_rcvisocpipe(gspca_dev->dev,
223 urb->transfer_flags = URB_ISO_ASAP
225 urb->interval = 1;
226 urb->complete = sd_isoc_irq;
227 urb->number_of_packets = SD_NPKT;
229 urb->iso_frame_desc[i].length = packet_size;
230 urb->iso_frame_desc[i].offset = packet_size * i;
254 static void sd_isoc_irq(struct urb *urb)
256 struct gspca_dev *gspca_dev = (struct gspca_dev *) urb->context;
258 struct urb *data_urb, *status_urb;
266 if (urb->status != 0) {
267 if (urb->status == -ESHUTDOWN)
273 gspca_err(gspca_dev, "urb status: %d\n", urb->status);
274 st = usb_submit_urb(urb, GFP_ATOMIC);
276 pr_err("resubmit urb error %d\n", st);
281 if (urb->transfer_buffer_length > 32) {
282 sd->last_data_urb = urb;
286 status_urb = urb;