Lines Matching refs:sitd
44 return &periodic->sitd->sitd_next; in periodic_next_shadow()
457 if (same_tt(dev, here.sitd->urb->dev)) { in tt_no_collision()
460 mask = hc32_to_cpu(ehci, here.sitd in tt_no_collision()
467 type = Q_NEXT_TYPE(ehci, here.sitd->hw_next); in tt_no_collision()
468 here = here.sitd->sitd_next; in tt_no_collision()
2038 struct ehci_sitd *sitd; in sitd_urb_transaction() local
2064 sitd = list_first_entry(&stream->free_list, in sitd_urb_transaction()
2066 if (sitd->frame == ehci->now_frame) in sitd_urb_transaction()
2068 list_del(&sitd->sitd_list); in sitd_urb_transaction()
2069 sitd_dma = sitd->sitd_dma; in sitd_urb_transaction()
2073 sitd = dma_pool_alloc(ehci->sitd_pool, mem_flags, in sitd_urb_transaction()
2076 if (!sitd) { in sitd_urb_transaction()
2083 memset(sitd, 0, sizeof(*sitd)); in sitd_urb_transaction()
2084 sitd->sitd_dma = sitd_dma; in sitd_urb_transaction()
2085 sitd->frame = NO_FRAME; in sitd_urb_transaction()
2086 list_add(&sitd->sitd_list, &iso_sched->td_list); in sitd_urb_transaction()
2103 struct ehci_sitd *sitd, in sitd_patch() argument
2111 sitd->hw_next = EHCI_LIST_END(ehci); in sitd_patch()
2112 sitd->hw_fullspeed_ep = stream->address; in sitd_patch()
2113 sitd->hw_uframe = stream->splits; in sitd_patch()
2114 sitd->hw_results = uf->transaction; in sitd_patch()
2115 sitd->hw_backpointer = EHCI_LIST_END(ehci); in sitd_patch()
2118 sitd->hw_buf[0] = cpu_to_hc32(ehci, bufp); in sitd_patch()
2119 sitd->hw_buf_hi[0] = cpu_to_hc32(ehci, bufp >> 32); in sitd_patch()
2121 sitd->hw_buf[1] = cpu_to_hc32(ehci, uf->buf1); in sitd_patch()
2124 sitd->hw_buf_hi[1] = cpu_to_hc32(ehci, bufp >> 32); in sitd_patch()
2125 sitd->index = index; in sitd_patch()
2129 sitd_link(struct ehci_hcd *ehci, unsigned frame, struct ehci_sitd *sitd) in sitd_link() argument
2132 sitd->sitd_next = ehci->pshadow[frame]; in sitd_link()
2133 sitd->hw_next = ehci->periodic[frame]; in sitd_link()
2134 ehci->pshadow[frame].sitd = sitd; in sitd_link()
2135 sitd->frame = frame; in sitd_link()
2137 ehci->periodic[frame] = cpu_to_hc32(ehci, sitd->sitd_dma | Q_TYPE_SITD); in sitd_link()
2151 struct ehci_sitd *sitd; in sitd_link_urb() local
2168 for (packet = sched->first_packet, sitd = NULL; in sitd_link_urb()
2177 sitd = list_entry(sched->td_list.next, in sitd_link_urb()
2179 list_move_tail(&sitd->sitd_list, &stream->td_list); in sitd_link_urb()
2180 sitd->stream = stream; in sitd_link_urb()
2181 sitd->urb = urb; in sitd_link_urb()
2183 sitd_patch(ehci, stream, sitd, sched, packet); in sitd_link_urb()
2185 sitd); in sitd_link_urb()
2214 static bool sitd_complete(struct ehci_hcd *ehci, struct ehci_sitd *sitd) in sitd_complete() argument
2216 struct urb *urb = sitd->urb; in sitd_complete()
2220 struct ehci_iso_stream *stream = sitd->stream; in sitd_complete()
2223 urb_index = sitd->index; in sitd_complete()
2225 t = hc32_to_cpup(ehci, &sitd->hw_results); in sitd_complete()
2276 sitd->urb = NULL; in sitd_complete()
2279 list_move_tail(&sitd->sitd_list, &stream->free_list); in sitd_complete()
2439 && (q.sitd->hw_results & SITD_ACTIVE(ehci))) { in scan_isoc()
2441 q_p = &q.sitd->sitd_next; in scan_isoc()
2442 hw_p = &q.sitd->hw_next; in scan_isoc()
2443 type = Q_NEXT_TYPE(ehci, q.sitd->hw_next); in scan_isoc()
2453 *q_p = q.sitd->sitd_next; in scan_isoc()
2455 q.sitd->hw_next != EHCI_LIST_END(ehci)) in scan_isoc()
2456 *hw_p = q.sitd->hw_next; in scan_isoc()
2459 type = Q_NEXT_TYPE(ehci, q.sitd->hw_next); in scan_isoc()
2461 modified = sitd_complete(ehci, q.sitd); in scan_isoc()