Lines Matching refs:urbp
74 struct urb_priv *urbp = urb->hcpriv; in uhci_add_fsbr() local
76 urbp->fsbr = 1; in uhci_add_fsbr()
79 static void uhci_urbp_wants_fsbr(struct uhci_hcd *uhci, struct urb_priv *urbp) in uhci_urbp_wants_fsbr() argument
81 if (urbp->fsbr) { in uhci_urbp_wants_fsbr()
142 static void uhci_add_td_to_urbp(struct uhci_td *td, struct urb_priv *urbp) in uhci_add_td_to_urbp() argument
144 list_add_tail(&td->list, &urbp->td_list); in uhci_add_td_to_urbp()
238 struct urb_priv *urbp = (struct urb_priv *) urb->hcpriv; in uhci_unlink_isochronous_tds() local
241 list_for_each_entry(td, &urbp->td_list, list) in uhci_unlink_isochronous_tds()
317 struct urb_priv *urbp = urb->hcpriv; in uhci_cleanup_queue() local
334 if (qh->queue.next != &urbp->node) { in uhci_cleanup_queue()
338 purbp = list_entry(urbp->node.prev, struct urb_priv, node); in uhci_cleanup_queue()
342 td = list_entry(urbp->td_list.prev, struct uhci_td, in uhci_cleanup_queue()
359 WARN_ON(list_empty(&urbp->td_list)); in uhci_cleanup_queue()
360 td = list_entry(urbp->td_list.next, struct uhci_td, list); in uhci_cleanup_queue()
375 struct urb_priv *urbp = NULL; in uhci_fixup_toggles() local
383 urbp = list_entry(qh->queue.next, struct urb_priv, node); in uhci_fixup_toggles()
393 urbp = list_prepare_entry(urbp, &qh->queue, node); in uhci_fixup_toggles()
394 list_for_each_entry_continue(urbp, &qh->queue, node) { in uhci_fixup_toggles()
398 td = list_entry(urbp->td_list.next, struct uhci_td, list); in uhci_fixup_toggles()
400 td = list_entry(urbp->td_list.prev, struct uhci_td, in uhci_fixup_toggles()
406 list_for_each_entry(td, &urbp->td_list, list) { in uhci_fixup_toggles()
487 struct urb_priv *urbp = list_entry(qh->queue.next, in uhci_activate_qh() local
489 struct uhci_td *td = list_entry(urbp->td_list.next, in uhci_activate_qh()
725 struct urb_priv *urbp; in uhci_alloc_urb_priv() local
727 urbp = kmem_cache_zalloc(uhci_up_cachep, GFP_ATOMIC); in uhci_alloc_urb_priv()
728 if (!urbp) in uhci_alloc_urb_priv()
731 urbp->urb = urb; in uhci_alloc_urb_priv()
732 urb->hcpriv = urbp; in uhci_alloc_urb_priv()
734 INIT_LIST_HEAD(&urbp->node); in uhci_alloc_urb_priv()
735 INIT_LIST_HEAD(&urbp->td_list); in uhci_alloc_urb_priv()
737 return urbp; in uhci_alloc_urb_priv()
741 struct urb_priv *urbp) in uhci_free_urb_priv() argument
745 if (!list_empty(&urbp->node)) in uhci_free_urb_priv()
747 urbp->urb); in uhci_free_urb_priv()
749 list_for_each_entry_safe(td, tmp, &urbp->td_list, list) { in uhci_free_urb_priv()
754 kmem_cache_free(uhci_up_cachep, urbp); in uhci_free_urb_priv()
798 struct urb_priv *urbp = urb->hcpriv; in uhci_submit_control() local
813 uhci_add_td_to_urbp(td, urbp); in uhci_submit_control()
852 uhci_add_td_to_urbp(td, urbp); in uhci_submit_control()
873 uhci_add_td_to_urbp(td, urbp); in uhci_submit_control()
925 struct urb_priv *urbp = urb->hcpriv; in uhci_submit_common() local
979 uhci_add_td_to_urbp(td, urbp); in uhci_submit_common()
1015 uhci_add_td_to_urbp(td, urbp); in uhci_submit_common()
1123 struct uhci_qh *qh, struct urb_priv *urbp) in uhci_fixup_short_transfer() argument
1129 td = list_entry(urbp->td_list.prev, struct uhci_td, list); in uhci_fixup_short_transfer()
1135 WARN_ON(list_empty(&urbp->td_list)); in uhci_fixup_short_transfer()
1149 if (list_empty(&urbp->td_list)) in uhci_fixup_short_transfer()
1152 tmp = urbp->td_list.prev; in uhci_fixup_short_transfer()
1157 while (tmp != &urbp->td_list) { in uhci_fixup_short_transfer()
1172 struct urb_priv *urbp = urb->hcpriv; in uhci_result_common() local
1173 struct uhci_qh *qh = urbp->qh; in uhci_result_common()
1178 list_for_each_entry_safe(td, tmp, &urbp->td_list, list) { in uhci_result_common()
1201 uhci_show_qh(uhci, urbp->qh, errbuf, in uhci_result_common()
1213 if (td->list.next != urbp->td_list.prev) in uhci_result_common()
1222 else if (&td->list != urbp->td_list.prev) in uhci_result_common()
1247 ret = uhci_fixup_short_transfer(uhci, qh, urbp); in uhci_result_common()
1261 struct urb_priv *urbp = (struct urb_priv *) urb->hcpriv; in uhci_submit_isochronous() local
1341 uhci_add_td_to_urbp(td, urbp); in uhci_submit_isochronous()
1353 list_for_each_entry(td, &urbp->td_list, list) { in uhci_submit_isochronous()
1372 struct urb_priv *urbp = urb->hcpriv; in uhci_result_isochronous() local
1373 struct uhci_qh *qh = urbp->qh; in uhci_result_isochronous()
1375 list_for_each_entry_safe(td, tmp, &urbp->td_list, list) { in uhci_result_isochronous()
1414 struct urb_priv *urbp; in uhci_urb_enqueue() local
1424 urbp = uhci_alloc_urb_priv(uhci, urb); in uhci_urb_enqueue()
1425 if (!urbp) in uhci_urb_enqueue()
1435 urbp->qh = qh; in uhci_urb_enqueue()
1456 list_add_tail(&urbp->node, &qh->queue); in uhci_urb_enqueue()
1462 if (qh->queue.next == &urbp->node && !qh->is_stopped) { in uhci_urb_enqueue()
1464 uhci_urbp_wants_fsbr(uhci, urbp); in uhci_urb_enqueue()
1472 uhci_free_urb_priv(uhci, urbp); in uhci_urb_enqueue()
1521 struct urb_priv *urbp = (struct urb_priv *) urb->hcpriv; in uhci_giveback_urb() local
1534 urbp->node.prev == &qh->queue && in uhci_giveback_urb()
1535 urbp->node.next != &qh->queue) { in uhci_giveback_urb()
1536 struct urb *nurb = list_entry(urbp->node.next, in uhci_giveback_urb()
1545 list_del_init(&urbp->node); in uhci_giveback_urb()
1552 uhci_free_urb_priv(uhci, urbp); in uhci_giveback_urb()
1577 struct urb_priv *urbp; in uhci_scan_qh() local
1582 urbp = list_entry(qh->queue.next, struct urb_priv, node); in uhci_scan_qh()
1583 urb = urbp->urb; in uhci_scan_qh()
1615 list_for_each_entry(urbp, &qh->queue, node) { in uhci_scan_qh()
1616 urb = urbp->urb; in uhci_scan_qh()
1641 urbp = list_entry(qh->queue.next, struct urb_priv, node); in uhci_scan_qh()
1642 if (urbp->fsbr && qh->wait_expired) { in uhci_scan_qh()
1643 struct uhci_td *td = list_entry(urbp->td_list.next, in uhci_scan_qh()
1670 struct urb_priv *urbp = NULL; in uhci_advance_check() local
1687 urbp = NULL; in uhci_advance_check()
1691 urbp = list_entry(qh->queue.next, struct urb_priv, node); in uhci_advance_check()
1692 td = list_entry(urbp->td_list.next, struct uhci_td, list); in uhci_advance_check()
1725 if (urbp && urbp->fsbr && !(status & TD_CTRL_IOC)) in uhci_advance_check()
1730 if (urbp) in uhci_advance_check()
1731 uhci_urbp_wants_fsbr(uhci, urbp); in uhci_advance_check()