Lines Matching refs:urb
132 struct urb *urbs[MAX_ISO_BUFS];
363 static void msi2500_isoc_handler(struct urb *urb)
365 struct msi2500_dev *dev = (struct msi2500_dev *)urb->context;
370 if (unlikely(urb->status == -ENOENT ||
371 urb->status == -ECONNRESET ||
372 urb->status == -ESHUTDOWN)) {
374 urb, urb->status == -ENOENT ? "" : "a");
378 if (unlikely(urb->status != 0)) {
379 dev_dbg(dev->dev, "called with status %d\n", urb->status);
390 for (i = 0; i < urb->number_of_packets; i++) {
394 fstatus = urb->iso_frame_desc[i].status;
398 i, urb->number_of_packets, fstatus);
403 flen = urb->iso_frame_desc[i].actual_length;
407 iso_buf = urb->transfer_buffer + urb->iso_frame_desc[i].offset;
427 i = usb_submit_urb(urb, GFP_ATOMIC);
429 dev_dbg(dev->dev, "Error (%d) re-submitting urb\n", i);
481 struct urb *urb;
494 urb = usb_alloc_urb(ISO_FRAMES_PER_DESC, GFP_KERNEL);
495 if (urb == NULL) {
499 dev->urbs[i] = urb;
500 dev_dbg(dev->dev, "Allocated URB at 0x%p\n", urb);
502 urb->interval = 1;
503 urb->dev = dev->udev;
504 urb->pipe = usb_rcvisocpipe(dev->udev, 0x81);
505 urb->transfer_flags = URB_ISO_ASAP | URB_NO_TRANSFER_DMA_MAP;
506 urb->transfer_buffer = usb_alloc_coherent(dev->udev,
508 GFP_KERNEL, &urb->transfer_dma);
509 if (urb->transfer_buffer == NULL) {
511 "Failed to allocate urb buffer %d\n", i);
515 urb->transfer_buffer_length = ISO_BUFFER_SIZE;
516 urb->complete = msi2500_isoc_handler;
517 urb->context = dev;
518 urb->start_frame = 0;
519 urb->number_of_packets = ISO_FRAMES_PER_DESC;
521 urb->iso_frame_desc[j].offset = j * ISO_MAX_FRAME_SIZE;
522 urb->iso_frame_desc[j].length = ISO_MAX_FRAME_SIZE;