/drivers/usb/host/ |
H A D | ehci-mem.c | 67 static void qh_destroy(struct ehci_qh *qh) argument 69 struct ehci_hcd *ehci = qh->ehci; 72 if (!list_empty (&qh->qtd_list) || qh->qh_next.ptr) { 73 ehci_dbg (ehci, "unused qh not empty!\n"); 76 if (qh->dummy) 77 ehci_qtd_free (ehci, qh->dummy); 78 dma_pool_free(ehci->qh_pool, qh->hw, qh->qh_dma); 79 kfree(qh); 84 struct ehci_qh *qh; local 117 qh_get(struct ehci_qh *qh) argument 124 qh_put(struct ehci_qh *qh) argument [all...] |
H A D | uhci-hcd.c | 616 dev_err(uhci_dev(uhci), "unable to create qh dma_pool\n"); 767 struct uhci_qh *qh; local 770 qh = (struct uhci_qh *) hep->hcpriv; 771 if (qh == NULL) 774 while (qh->state != QH_STATE_IDLE) { 778 qh->state == QH_STATE_IDLE); 783 uhci_free_qh(uhci, qh);
|
H A D | ehci-q.c | 26 * Control, bulk, and interrupt traffic all use "qh" lists. They list "qtd" 37 * (b) special fields in qh entries or (c) split iso entries. TTs will 88 qh_update (struct ehci_hcd *ehci, struct ehci_qh *qh, struct ehci_qtd *qtd) argument 90 struct ehci_qh_hw *hw = qh->hw; 93 BUG_ON(qh->qh_state != QH_STATE_IDLE); 106 is_out = qh->is_out; 108 if (unlikely (!usb_gettoggle (qh->dev, epnum, is_out))) { 110 usb_settoggle (qh->dev, epnum, is_out, 1); 117 /* if it weren't for a common silicon quirk (writing the dummy into the qh 118 * overlay, so qh 122 qh_refresh(struct ehci_hcd *ehci, struct ehci_qh *qh) argument 148 struct ehci_qh *qh = ep->hcpriv; local 159 ehci_clear_tt_buffer(struct ehci_hcd *ehci, struct ehci_qh *qh, struct urb *urb, u32 token) argument 260 struct ehci_qh *qh = (struct ehci_qh *) urb->hcpriv; variable in typeref:struct:ehci_qh 268 qh_put (qh); variable 308 qh_completions(struct ehci_hcd *ehci, struct ehci_qh *qh) argument 798 struct ehci_qh *qh = ehci_qh_alloc (ehci, flags); local 969 qh_link_async(struct ehci_hcd *ehci, struct ehci_qh *qh) argument 1029 struct ehci_qh *qh = NULL; local 1111 struct ehci_qh *qh = NULL; local 1163 struct ehci_qh *qh = ehci->reclaim; local 1205 start_unlink_async(struct ehci_hcd *ehci, struct ehci_qh *qh) argument 1267 struct ehci_qh *qh; local [all...] |
H A D | uhci-debug.c | 109 out += sprintf(out, "qh [%p] ", urbp->qh); 124 (urbp->qh->type == USB_ENDPOINT_XFER_CONTROL ? 133 if (urbp->qh->type != USB_ENDPOINT_XFER_ISOC && 154 struct uhci_qh *qh, char *buf, int len, int space) 158 __hc32 element = qh_element(qh); 165 switch (qh->type) { 174 space, "", qh, qtype, 175 hc32_to_cpu(uhci, qh->link), 177 if (qh 153 uhci_show_qh(struct uhci_hcd *uhci, struct uhci_qh *qh, char *buf, int len, int space) argument 351 struct uhci_qh *qh; local 581 uhci_show_qh(struct uhci_hcd *uhci, struct uhci_qh *qh, char *buf, int len, int space) argument [all...] |
H A D | ehci-dbg.c | 138 dbg_qh (const char *label, struct ehci_hcd *ehci, struct ehci_qh *qh) argument 140 struct ehci_qh_hw *hw = qh->hw; 142 ehci_dbg (ehci, "%s qh %p n%08x info %x %x qtd %x\n", label, 143 qh, hw->hw_next, hw->hw_info1, hw->hw_info2, hw->hw_current); 300 dbg_qh (char *label, struct ehci_hcd *ehci, struct ehci_qh *qh) argument 429 struct ehci_qh *qh, 443 struct ehci_qh_hw *hw = qh->hw; 449 if (mark == '/') { /* qh_alt_next controls qh advance? */ 460 "qh/%p dev%d %cs ep%d %08x %08x (%08x%c %s nak%d)", 461 qh, scratc 427 qh_lines( struct ehci_hcd *ehci, struct ehci_qh *qh, char **nextp, unsigned *sizep ) argument 525 struct ehci_qh *qh; local [all...] |
H A D | ehci-hcd.c | 101 /* 5-ms async qh unlink delay */ 664 * dedicate a qh for the async ring head, since we couldn't unlink 665 * a 'real' qh without stopping the async schedule [4.8]. use it 667 * its dummy is used in hw_alt_next of many tds, to prevent the qh 670 ehci->async->qh_next.qh = NULL; 896 /* complete the unlinking of some qh [4.15.2.3] */ 1032 static void unlink_async (struct ehci_hcd *ehci, struct ehci_qh *qh) argument 1042 if (qh->qh_state != QH_STATE_LINKED) { 1043 if (qh->qh_state == QH_STATE_COMPLETING) 1044 qh 1071 struct ehci_qh *qh; local 1143 struct ehci_qh *qh, *tmp; local 1209 struct ehci_qh *qh; local [all...] |
H A D | uhci-q.c | 249 struct uhci_qh *qh; local 251 qh = dma_pool_alloc(uhci->qh_pool, GFP_ATOMIC, &dma_handle); 252 if (!qh) 255 memset(qh, 0, sizeof(*qh)); 256 qh->dma_handle = dma_handle; 258 qh->element = UHCI_PTR_TERM(uhci); 259 qh->link = UHCI_PTR_TERM(uhci); 261 INIT_LIST_HEAD(&qh->queue); 262 INIT_LIST_HEAD(&qh 293 uhci_free_qh(struct uhci_hcd *uhci, struct uhci_qh *qh) argument 297 dev_WARN(uhci_dev(uhci), "qh %p list not empty!\\n", qh); local 315 uhci_cleanup_queue(struct uhci_hcd *uhci, struct uhci_qh *qh, struct urb *urb) argument 373 uhci_fixup_toggles(struct uhci_hcd *uhci, struct uhci_qh *qh, int skip_first) argument 425 link_iso(struct uhci_hcd *uhci, struct uhci_qh *qh) argument 436 link_interrupt(struct uhci_hcd *uhci, struct uhci_qh *qh) argument 452 link_async(struct uhci_hcd *uhci, struct uhci_qh *qh) argument 481 uhci_activate_qh(struct uhci_hcd *uhci, struct uhci_qh *qh) argument 522 unlink_interrupt(struct uhci_hcd *uhci, struct uhci_qh *qh) argument 534 unlink_async(struct uhci_hcd *uhci, struct uhci_qh *qh) argument 552 uhci_unlink_qh(struct uhci_hcd *uhci, struct uhci_qh *qh) argument 587 uhci_make_qh_idle(struct uhci_hcd *uhci, struct uhci_qh *qh) argument 624 uhci_check_bandwidth(struct uhci_hcd *uhci, struct uhci_qh *qh) argument 660 uhci_reserve_bandwidth(struct uhci_hcd *uhci, struct uhci_qh *qh) argument 693 uhci_release_bandwidth(struct uhci_hcd *uhci, struct uhci_qh *qh) argument 790 uhci_submit_control(struct uhci_hcd *uhci, struct urb *urb, struct uhci_qh *qh) argument 916 uhci_submit_common(struct uhci_hcd *uhci, struct urb *urb, struct uhci_qh *qh) argument 1057 uhci_submit_bulk(struct uhci_hcd *uhci, struct urb *urb, struct uhci_qh *qh) argument 1074 uhci_submit_interrupt(struct uhci_hcd *uhci, struct urb *urb, struct uhci_qh *qh) argument 1123 uhci_fixup_short_transfer(struct uhci_hcd *uhci, struct uhci_qh *qh, struct urb_priv *urbp) argument 1174 struct uhci_qh *qh = urbp->qh; local 1255 uhci_submit_isochronous(struct uhci_hcd *uhci, struct urb *urb, struct uhci_qh *qh) argument 1371 struct uhci_qh *qh = urbp->qh; local 1413 struct uhci_qh *qh; local 1483 struct uhci_qh *qh; local 1573 uhci_scan_qh(struct uhci_hcd *uhci, struct uhci_qh *qh) argument 1666 uhci_advance_check(struct uhci_hcd *uhci, struct uhci_qh *qh) argument 1742 struct uhci_qh *qh; local [all...] |
H A D | ehci-sched.c | 64 * @periodic: host pointer to qh/itd/sitd 73 return &periodic->qh->qh_next; 89 /* our ehci_shadow.qh is actually software part */ 91 return &periodic->qh->hw->hw_next; 144 hw = q->qh->hw; 147 usecs += q->qh->usecs; 151 usecs += q->qh->c_usecs; 153 q = &q->qh->qh_next; 284 if (same_tt(dev, q->qh->dev)) { 285 uf = tt_start_uframe(ehci, q->qh 558 qh_link_periodic(struct ehci_hcd *ehci, struct ehci_qh *qh) argument 622 qh_unlink_periodic(struct ehci_hcd *ehci, struct ehci_qh *qh) argument 661 intr_deschedule(struct ehci_hcd *ehci, struct ehci_qh *qh) argument 760 check_intr_schedule( struct ehci_hcd *ehci, unsigned frame, unsigned uframe, const struct ehci_qh *qh, __hc32 *c_maskp ) argument 828 qh_schedule(struct ehci_hcd *ehci, struct ehci_qh *qh) argument 902 struct ehci_qh *qh; local [all...] |
H A D | isp1760-hcd.h | 108 struct isp1760_qh *qh; member in struct:slotinfo 114 typedef void (packet_enqueue)(struct usb_hcd *hcd, struct isp1760_qh *qh,
|
H A D | isp1760-hcd.c | 391 struct isp1760_qh *qh; local 393 qh = kmem_cache_zalloc(qh_cachep, flags); 394 if (!qh) 397 INIT_LIST_HEAD(&qh->qh_list); 398 INIT_LIST_HEAD(&qh->qtd_list); 399 qh->slot = -1; 401 return qh; 404 static void qh_free(struct isp1760_qh *qh) argument 406 WARN_ON(!list_empty(&qh->qtd_list)); 407 WARN_ON(qh 541 last_qtd_of_urb(struct isp1760_qtd *qtd, struct isp1760_qh *qh) argument 561 create_ptd_atl(struct isp1760_qh *qh, struct isp1760_qtd *qtd, struct ptd *ptd) argument 636 transform_add_int(struct isp1760_qh *qh, struct isp1760_qtd *qtd, struct ptd *ptd) argument 688 create_ptd_int(struct isp1760_qh *qh, struct isp1760_qtd *qtd, struct ptd *ptd) argument 745 start_bus_transfer(struct usb_hcd *hcd, u32 ptd_offset, int slot, struct slotinfo *slots, struct isp1760_qtd *qtd, struct isp1760_qh *qh, struct ptd *ptd) argument 793 collect_qtds(struct usb_hcd *hcd, struct isp1760_qh *qh, struct list_head *urb_list) argument 856 enqueue_qtds(struct usb_hcd *hcd, struct isp1760_qh *qh) argument 938 struct isp1760_qh *qh, *qh_next; local 1097 struct isp1760_qh *qh; local 1523 struct isp1760_qh *qh, *qhit; local 1601 kill_transfer(struct usb_hcd *hcd, struct urb *urb, struct isp1760_qh *qh) argument 1632 dequeue_urb_from_qtd(struct usb_hcd *hcd, struct isp1760_qh *qh, struct isp1760_qtd *qtd) argument 1668 struct isp1760_qh *qh; local 1702 struct isp1760_qh *qh, *qh_iter; local 2145 struct isp1760_qh *qh = ep->hcpriv; local [all...] |
H A D | oxu210hp-hcd.c | 603 static void oxu_qh_free(struct oxu_hcd *oxu, struct ehci_qh *qh) argument 609 index = qh - &oxu->mem->qh_pool[0]; 617 struct ehci_qh *qh = container_of(kref, struct ehci_qh, kref); local 618 struct oxu_hcd *oxu = qh->oxu; 621 if (!list_empty(&qh->qtd_list) || qh->qh_next.ptr) { 622 oxu_dbg(oxu, "unused qh not empty!\n"); 625 if (qh->dummy) 626 oxu_qtd_free(oxu, qh->dummy); 627 oxu_qh_free(oxu, qh); 633 struct ehci_qh *qh = NULL; local 668 qh_get(struct ehci_qh *qh) argument 674 qh_put(struct ehci_qh *qh) argument 817 qh_update(struct oxu_hcd *oxu, struct ehci_qh *qh, struct ehci_qtd *qtd) argument 851 qh_refresh(struct oxu_hcd *oxu, struct ehci_qh *qh) argument 926 struct ehci_qh *qh = (struct ehci_qh *) urb->hcpriv; variable in typeref:struct:ehci_qh 934 qh_put(qh); variable 979 qh_completions(struct oxu_hcd *oxu, struct ehci_qh *qh) argument 1360 struct ehci_qh *qh = oxu_qh_alloc(oxu); local 1493 qh_link_async(struct oxu_hcd *oxu, struct ehci_qh *qh) argument 1543 struct ehci_qh *qh = NULL; local 1620 struct ehci_qh *qh = NULL; local 1662 struct ehci_qh *qh = oxu->reclaim; local 1702 start_unlink_async(struct oxu_hcd *oxu, struct ehci_qh *qh) argument 1756 struct ehci_qh *qh; local 1930 qh_link_periodic(struct oxu_hcd *oxu, struct ehci_qh *qh) argument 1995 qh_unlink_periodic(struct oxu_hcd *oxu, struct ehci_qh *qh) argument 2038 intr_deschedule(struct oxu_hcd *oxu, struct ehci_qh *qh) argument 2103 check_intr_schedule(struct oxu_hcd *oxu, unsigned frame, unsigned uframe, const struct ehci_qh *qh, __le32 *c_maskp) argument 2127 qh_schedule(struct oxu_hcd *oxu, struct ehci_qh *qh) argument 2195 struct ehci_qh *qh; local 2409 unlink_async(struct oxu_hcd *oxu, struct ehci_qh *qh) argument 2951 struct ehci_qh *qh; local 3012 struct ehci_qh *qh, *tmp; local [all...] |
H A D | uhci-hcd.h | 123 * with each endpoint, and qh->element (updated by the HC) is either: 129 * place. Then qh->element is UHCI_PTR_TERM. 131 * In the schedule, qh->link maintains a list of QHs seen by the HC: 132 * skel1 --> ep1-qh --> ep2-qh --> ... --> skel2 --> ... 134 * qh->node is the software equivalent of qh->link. The differences 187 #define qh_element(qh) ACCESS_ONCE((qh)->element) 189 #define LINK_TO_QH(uhci, qh) (UHCI_PTR_Q 485 struct uhci_qh *qh; /* QH for this URB */ member in struct:urb_priv [all...] |
H A D | ehci.h | 60 * when updating hw_* fields in shared qh/qtd/... structures. 124 struct dma_pool *qh_pool; /* qh per active urb */ 125 struct dma_pool *qtd_pool; /* one or more per qh */ 271 /* mask NakCnt+T in qh->hw_alt_next */ 278 /* type tag from {qh,itd,sitd,fstn}->hw_next */ 306 * For entries in the async schedule, the type tag always says "qh". 309 struct ehci_qh *qh; /* Q_TYPE_QH */ member in union:ehci_shadow 351 dma_addr_t qh_dma; /* address of qh */ 352 union ehci_shadow qh_next; /* ptr to qh; or periodic */ 418 * acts like a qh woul [all...] |
H A D | oxu210hp.h | 82 #define HCC_CANPARK(p) ((p)&(1 << 2)) /* true: can park on async qh */ 94 #define CMD_PARK (1<<11) /* enable "park" on async qh */ 237 /* mask NakCnt+T in qh->hw_alt_next */ 242 /* Type tag from {qh, itd, sitd, fstn}->hw_next */ 260 * For entries in the async schedule, the type tag always says "qh". 263 struct ehci_qh *qh; /* Q_TYPE_QH */ member in union:ehci_shadow 297 dma_addr_t qh_dma; /* address of qh */ 298 union ehci_shadow qh_next; /* ptr to qh; or periodic */ 438 #define EHCI_SHRINK_JIFFIES (HZ/200) /* async qh unlink delay */
|
/drivers/usb/musb/ |
H A D | musb_host.h | 56 u8 mux; /* qh multiplexed to hw_ep */ 76 /* map from control or bulk queue head to the first qh on that ring */ 96 static inline struct urb *next_urb(struct musb_qh *qh) argument 100 if (!qh) 102 queue = &qh->hep->urb_list;
|
H A D | musb_host.c | 186 static void musb_ep_set_qh(struct musb_hw_ep *ep, int is_in, struct musb_qh *qh) argument 189 ep->in_qh = qh; 191 ep->out_qh = qh; 206 musb_start_urb(struct musb *musb, int is_in, struct musb_qh *qh) argument 211 struct urb *urb = next_urb(qh); 214 struct musb_hw_ep *hw_ep = qh->hw_ep; 219 /* initialize software qh state */ 220 qh->offset = 0; 221 qh->segsize = 0; 224 switch (qh 321 musb_save_toggle(struct musb_qh *qh, int is_in, struct urb *urb) argument 350 struct musb_qh *qh = musb_ep_get_qh(hw_ep, is_in); local 455 struct musb_qh *qh = hw_ep->in_qh; local 546 musb_rx_reinit(struct musb *musb, struct musb_qh *qh, struct musb_hw_ep *ep) argument 608 musb_tx_dma_program(struct dma_controller *dma, struct musb_hw_ep *hw_ep, struct musb_qh *qh, struct urb *urb, u32 offset, u32 length) argument 684 struct musb_qh *qh = musb_ep_get_qh(hw_ep, !is_out); local 886 struct musb_qh *qh = hw_ep->in_qh; local 964 struct musb_qh *qh = hw_ep->in_qh; local 1103 struct musb_qh *qh = hw_ep->out_qh; local 1426 struct musb_qh *qh = hw_ep->in_qh; local 1768 musb_schedule( struct musb *musb, struct musb_qh *qh, int is_in) argument 1892 struct musb_qh *qh; local 2073 musb_cleanup_urb(struct urb *urb, struct musb_qh *qh) argument 2134 struct musb_qh *qh; local 2196 struct musb_qh *qh; local [all...] |
/drivers/scsi/qla2xxx/ |
H A D | qla_dbg.c | 385 struct qla2xxx_mqueue_header *qh; local 410 qh = ptr; 411 qh->queue = __constant_htonl(TYPE_REQUEST_QUEUE); 412 qh->number = htonl(que); 413 qh->size = htonl(req->length * sizeof(request_t)); 438 qh = ptr; 439 qh->queue = __constant_htonl(TYPE_RESPONSE_QUEUE); 440 qh->number = htonl(que); 441 qh->size = htonl(rsp->length * sizeof(response_t));
|
/drivers/usb/gadget/ |
H A D | ci13xxx_udc.h | 94 } qh; member in struct:ci13xxx_ep
|
H A D | fsl_udc_core.c | 513 /* Setup qh structure and ep register for ep0. */ 702 struct ep_queue_head *qh = get_qh_by_ep(ep); local 705 qh->next_dtd_ptr = cpu_to_hc32(td->td_dma 709 qh->size_ioc_int_sts &= cpu_to_hc32(~(EP_QUEUE_HEAD_STATUS_ACTIVE 1063 struct ep_queue_head *qh; local 1074 qh = get_qh_by_ep(ep); 1080 size = (qh->size_ioc_int_sts & DTD_PACKET_SIZE) 1558 struct ep_queue_head *qh; local 1561 qh = &udc->ep_qh[ep_num * 2 + EP_DIR_OUT]; 1576 u32 *s = (u32 *)qh [all...] |
H A D | mv_udc_core.c | 851 struct mv_dqh *qh; local 853 qh = ep->dqh; 854 qh->next_dtd_ptr = 1; 855 qh->size_ioc_int_sts = 0;
|
H A D | fsl_usb2_udc.h | 353 * Rem: all the variables of qh are LittleEndian Mode 452 struct ep_queue_head *qh; member in struct:fsl_ep 576 return ep->qh;
|
/drivers/usb/host/whci/ |
H A D | whci-hc.h | 206 * @qh: the QHead of this qset 242 struct whc_qhead qh; member in struct:whc_qset
|
/drivers/scsi/bfa/ |
H A D | bfa_fcs_lport.c | 4850 struct list_head *qh, *qe; local 4862 qh = &port->rport_q; 4863 qe = bfa_q_first(qh); 4865 while ((qe != qh) && (i < nrports)) { 4898 struct list_head *qh, *qe; local 4910 qh = &port->rport_q; 4911 qe = bfa_q_first(qh); 4913 while ((qe != qh) && (i < *nrports)) { 4942 struct list_head *qh, *qe; local 4961 qh [all...] |
H A D | bfa_ioc.c | 2938 struct list_head *qh = &mod->timer_q; local 2945 qe = bfa_q_next(qh); 2947 while (qe != qh) {
|