Lines Matching refs:urb

40 finish_urb(struct ohci_hcd *ohci, struct urb *urb, int status)  in finish_urb()  argument
45 struct usb_host_endpoint *ep = urb->ep; in finish_urb()
51 urb_free_priv (ohci, urb->hcpriv); in finish_urb()
52 urb->hcpriv = NULL; in finish_urb()
56 switch (usb_pipetype (urb->pipe)) { in finish_urb()
72 usb_hcd_unlink_urb_from_ep(ohci_to_hcd(ohci), urb); in finish_urb()
74 usb_hcd_giveback_urb(ohci_to_hcd(ohci), urb, status); in finish_urb()
91 urb = list_first_entry(&ep->urb_list, struct urb, urb_list); in finish_urb()
92 urb_priv = urb->hcpriv; in finish_urb()
516 struct urb *urb, int index) in td_fill() argument
519 struct urb_priv *urb_priv = urb->hcpriv; in td_fill()
537 || (urb->transfer_flags & URB_NO_INTERRUPT)) in td_fill()
550 td->urb = urb; in td_fill()
591 struct urb *urb in td_submit_urb() argument
593 struct urb_priv *urb_priv = urb->hcpriv; in td_submit_urb()
596 int data_len = urb->transfer_buffer_length; in td_submit_urb()
599 int is_out = usb_pipeout (urb->pipe); in td_submit_urb()
608 if (!usb_gettoggle (urb->dev, usb_pipeendpoint (urb->pipe), is_out)) { in td_submit_urb()
609 usb_settoggle (urb->dev, usb_pipeendpoint (urb->pipe), in td_submit_urb()
616 i = urb->num_mapped_sgs; in td_submit_urb()
618 sg = urb->sg; in td_submit_urb()
629 data = urb->transfer_dma; in td_submit_urb()
659 if (!(urb->transfer_flags & URB_SHORT_NOT_OK)) in td_submit_urb()
662 td_fill(ohci, info, data, n, urb, cnt); in td_submit_urb()
677 if ((urb->transfer_flags & URB_ZERO_PACKET) in td_submit_urb()
679 td_fill (ohci, info, 0, 0, urb, cnt); in td_submit_urb()
694 td_fill (ohci, info, urb->setup_dma, 8, urb, cnt++); in td_submit_urb()
699 td_fill (ohci, info, data, data_len, urb, cnt++); in td_submit_urb()
704 td_fill (ohci, info, data, 0, urb, cnt++); in td_submit_urb()
715 for (cnt = urb_priv->td_cnt; cnt < urb->number_of_packets; in td_submit_urb()
717 int frame = urb->start_frame; in td_submit_urb()
722 frame += cnt * urb->interval; in td_submit_urb()
725 data + urb->iso_frame_desc [cnt].offset, in td_submit_urb()
726 urb->iso_frame_desc [cnt].length, urb, cnt); in td_submit_urb()
754 static int td_done(struct ohci_hcd *ohci, struct urb *urb, struct td *td) in td_done() argument
775 if (usb_pipeout (urb->pipe)) in td_done()
776 dlen = urb->iso_frame_desc [td->index].length; in td_done()
783 urb->actual_length += dlen; in td_done()
784 urb->iso_frame_desc [td->index].actual_length = dlen; in td_done()
785 urb->iso_frame_desc [td->index].status = cc_to_error [cc]; in td_done()
790 urb, td, 1 + td->index, dlen, cc); in td_done()
797 int type = usb_pipetype (urb->pipe); in td_done()
804 && !(urb->transfer_flags & URB_SHORT_NOT_OK)) in td_done()
812 urb->actual_length += tdBE - td->data_dma + 1; in td_done()
814 urb->actual_length += in td_done()
822 urb, td, 1 + td->index, cc, in td_done()
823 urb->actual_length, in td_done()
824 urb->transfer_buffer_length); in td_done()
833 struct urb *urb = td->urb; in ed_halted() local
834 urb_priv_t *urb_priv = urb->hcpriv; in ed_halted()
856 if (next->urb != urb) in ed_halted()
878 if ((urb->transfer_flags & URB_SHORT_NOT_OK) == 0) in ed_halted()
882 if (usb_pipecontrol (urb->pipe)) in ed_halted()
888 urb, urb->dev->devpath, in ed_halted()
889 usb_pipeendpoint (urb->pipe), in ed_halted()
890 usb_pipein (urb->pipe) ? "in" : "out", in ed_halted()
1035 struct urb *urb; in finish_unlinks() local
1041 urb = td->urb; in finish_unlinks()
1042 urb_priv = td->urb->hcpriv; in finish_unlinks()
1044 if (!urb->unlinked) { in finish_unlinks()
1065 td_done (ohci, urb, td); in finish_unlinks()
1071 finish_urb(ohci, urb, 0); in finish_unlinks()
1147 struct urb *urb = td->urb; in takeback_td() local
1148 urb_priv_t *urb_priv = urb->hcpriv; in takeback_td()
1153 status = td_done(ohci, urb, td); in takeback_td()
1158 finish_urb(ohci, urb, status); in takeback_td()