• Home
  • Raw
  • Download

Lines Matching refs:itd

54 		return &periodic->itd->itd_next;  in periodic_next_shadow()
463 type = Q_NEXT_TYPE(ehci, here.itd->hw_next); in tt_no_collision()
464 here = here.itd->itd_next; in tt_no_collision()
1270 struct ehci_itd *itd; in itd_urb_transaction() local
1297 itd = list_first_entry(&stream->free_list, in itd_urb_transaction()
1299 if (itd->frame == ehci->now_frame) in itd_urb_transaction()
1301 list_del (&itd->itd_list); in itd_urb_transaction()
1302 itd_dma = itd->itd_dma; in itd_urb_transaction()
1306 itd = dma_pool_alloc (ehci->itd_pool, mem_flags, in itd_urb_transaction()
1309 if (!itd) { in itd_urb_transaction()
1316 memset (itd, 0, sizeof *itd); in itd_urb_transaction()
1317 itd->itd_dma = itd_dma; in itd_urb_transaction()
1318 itd->frame = NO_FRAME; in itd_urb_transaction()
1319 list_add (&itd->itd_list, &sched->td_list); in itd_urb_transaction()
1690 struct ehci_itd *itd) in itd_init() argument
1695 itd->hw_next = EHCI_LIST_END(ehci); in itd_init()
1696 itd->hw_bufp [0] = stream->buf0; in itd_init()
1697 itd->hw_bufp [1] = stream->buf1; in itd_init()
1698 itd->hw_bufp [2] = stream->buf2; in itd_init()
1701 itd->index[i] = -1; in itd_init()
1709 struct ehci_itd *itd, in itd_patch() argument
1716 unsigned pg = itd->pg; in itd_patch()
1721 itd->index [uframe] = index; in itd_patch()
1723 itd->hw_transaction[uframe] = uf->transaction; in itd_patch()
1724 itd->hw_transaction[uframe] |= cpu_to_hc32(ehci, pg << 12); in itd_patch()
1725 itd->hw_bufp[pg] |= cpu_to_hc32(ehci, uf->bufp & ~(u32)0); in itd_patch()
1726 itd->hw_bufp_hi[pg] |= cpu_to_hc32(ehci, (u32)(uf->bufp >> 32)); in itd_patch()
1732 itd->pg = ++pg; in itd_patch()
1733 itd->hw_bufp[pg] |= cpu_to_hc32(ehci, bufp & ~(u32)0); in itd_patch()
1734 itd->hw_bufp_hi[pg] |= cpu_to_hc32(ehci, (u32)(bufp >> 32)); in itd_patch()
1739 itd_link (struct ehci_hcd *ehci, unsigned frame, struct ehci_itd *itd) in itd_link() argument
1756 itd->itd_next = here; in itd_link()
1757 itd->hw_next = *hw_p; in itd_link()
1758 prev->itd = itd; in itd_link()
1759 itd->frame = frame; in itd_link()
1761 *hw_p = cpu_to_hc32(ehci, itd->itd_dma | Q_TYPE_ITD); in itd_link()
1775 struct ehci_itd *itd; in itd_link_urb() local
1791 for (packet = iso_sched->first_packet, itd = NULL; in itd_link_urb()
1793 if (itd == NULL) { in itd_link_urb()
1799 itd = list_entry (iso_sched->td_list.next, in itd_link_urb()
1801 list_move_tail (&itd->itd_list, &stream->td_list); in itd_link_urb()
1802 itd->stream = stream; in itd_link_urb()
1803 itd->urb = urb; in itd_link_urb()
1804 itd_init (ehci, stream, itd); in itd_link_urb()
1810 itd_patch(ehci, itd, iso_sched, packet, uframe); in itd_link_urb()
1819 itd_link(ehci, frame & (ehci->periodic_size - 1), itd); in itd_link_urb()
1820 itd = NULL; in itd_link_urb()
1845 static bool itd_complete(struct ehci_hcd *ehci, struct ehci_itd *itd) in itd_complete() argument
1847 struct urb *urb = itd->urb; in itd_complete()
1852 struct ehci_iso_stream *stream = itd->stream; in itd_complete()
1858 if (likely (itd->index[uframe] == -1)) in itd_complete()
1860 urb_index = itd->index[uframe]; in itd_complete()
1863 t = hc32_to_cpup(ehci, &itd->hw_transaction [uframe]); in itd_complete()
1864 itd->hw_transaction [uframe] = 0; in itd_complete()
1922 itd->urb = NULL; in itd_complete()
1925 list_move_tail(&itd->itd_list, &stream->free_list); in itd_complete()
2425 if (q.itd->hw_transaction[uf] & in scan_isoc()
2430 q_p = &q.itd->itd_next; in scan_isoc()
2431 hw_p = &q.itd->hw_next; in scan_isoc()
2433 q.itd->hw_next); in scan_isoc()
2444 *q_p = q.itd->itd_next; in scan_isoc()
2446 q.itd->hw_next != EHCI_LIST_END(ehci)) in scan_isoc()
2447 *hw_p = q.itd->hw_next; in scan_isoc()
2451 type = Q_NEXT_TYPE(ehci, q.itd->hw_next); in scan_isoc()
2453 modified = itd_complete (ehci, q.itd); in scan_isoc()