Lines Matching refs:sitd
44 return &periodic->sitd->sitd_next; in periodic_next_shadow()
451 if (same_tt(dev, here.sitd->urb->dev)) { in tt_no_collision()
454 mask = hc32_to_cpu(ehci, here.sitd in tt_no_collision()
461 type = Q_NEXT_TYPE(ehci, here.sitd->hw_next); in tt_no_collision()
462 here = here.sitd->sitd_next; in tt_no_collision()
2028 struct ehci_sitd *sitd; in sitd_urb_transaction() local
2054 sitd = list_first_entry(&stream->free_list, in sitd_urb_transaction()
2056 if (sitd->frame == ehci->now_frame) in sitd_urb_transaction()
2058 list_del(&sitd->sitd_list); in sitd_urb_transaction()
2059 sitd_dma = sitd->sitd_dma; in sitd_urb_transaction()
2063 sitd = dma_pool_alloc(ehci->sitd_pool, mem_flags, in sitd_urb_transaction()
2066 if (!sitd) { in sitd_urb_transaction()
2073 memset(sitd, 0, sizeof(*sitd)); in sitd_urb_transaction()
2074 sitd->sitd_dma = sitd_dma; in sitd_urb_transaction()
2075 sitd->frame = NO_FRAME; in sitd_urb_transaction()
2076 list_add(&sitd->sitd_list, &iso_sched->td_list); in sitd_urb_transaction()
2093 struct ehci_sitd *sitd, in sitd_patch() argument
2101 sitd->hw_next = EHCI_LIST_END(ehci); in sitd_patch()
2102 sitd->hw_fullspeed_ep = stream->address; in sitd_patch()
2103 sitd->hw_uframe = stream->splits; in sitd_patch()
2104 sitd->hw_results = uf->transaction; in sitd_patch()
2105 sitd->hw_backpointer = EHCI_LIST_END(ehci); in sitd_patch()
2108 sitd->hw_buf[0] = cpu_to_hc32(ehci, bufp); in sitd_patch()
2109 sitd->hw_buf_hi[0] = cpu_to_hc32(ehci, bufp >> 32); in sitd_patch()
2111 sitd->hw_buf[1] = cpu_to_hc32(ehci, uf->buf1); in sitd_patch()
2114 sitd->hw_buf_hi[1] = cpu_to_hc32(ehci, bufp >> 32); in sitd_patch()
2115 sitd->index = index; in sitd_patch()
2119 sitd_link(struct ehci_hcd *ehci, unsigned frame, struct ehci_sitd *sitd) in sitd_link() argument
2122 sitd->sitd_next = ehci->pshadow[frame]; in sitd_link()
2123 sitd->hw_next = ehci->periodic[frame]; in sitd_link()
2124 ehci->pshadow[frame].sitd = sitd; in sitd_link()
2125 sitd->frame = frame; in sitd_link()
2127 ehci->periodic[frame] = cpu_to_hc32(ehci, sitd->sitd_dma | Q_TYPE_SITD); in sitd_link()
2141 struct ehci_sitd *sitd; in sitd_link_urb() local
2158 for (packet = sched->first_packet, sitd = NULL; in sitd_link_urb()
2167 sitd = list_entry(sched->td_list.next, in sitd_link_urb()
2169 list_move_tail(&sitd->sitd_list, &stream->td_list); in sitd_link_urb()
2170 sitd->stream = stream; in sitd_link_urb()
2171 sitd->urb = urb; in sitd_link_urb()
2173 sitd_patch(ehci, stream, sitd, sched, packet); in sitd_link_urb()
2175 sitd); in sitd_link_urb()
2204 static bool sitd_complete(struct ehci_hcd *ehci, struct ehci_sitd *sitd) in sitd_complete() argument
2206 struct urb *urb = sitd->urb; in sitd_complete()
2210 struct ehci_iso_stream *stream = sitd->stream; in sitd_complete()
2213 urb_index = sitd->index; in sitd_complete()
2215 t = hc32_to_cpup(ehci, &sitd->hw_results); in sitd_complete()
2266 sitd->urb = NULL; in sitd_complete()
2269 list_move_tail(&sitd->sitd_list, &stream->free_list); in sitd_complete()
2429 && (q.sitd->hw_results & SITD_ACTIVE(ehci))) { in scan_isoc()
2431 q_p = &q.sitd->sitd_next; in scan_isoc()
2432 hw_p = &q.sitd->hw_next; in scan_isoc()
2433 type = Q_NEXT_TYPE(ehci, q.sitd->hw_next); in scan_isoc()
2443 *q_p = q.sitd->sitd_next; in scan_isoc()
2445 q.sitd->hw_next != EHCI_LIST_END(ehci)) in scan_isoc()
2446 *hw_p = q.sitd->hw_next; in scan_isoc()
2449 type = Q_NEXT_TYPE(ehci, q.sitd->hw_next); in scan_isoc()
2451 modified = sitd_complete(ehci, q.sitd); in scan_isoc()