Lines Matching refs:dequeue

18  * 3. Enqueue pointer = dequeue pointer = address of first TRB in the segment.
21 * 1. A ring is empty if enqueue == dequeue. This means there will always be at
24 * 2. When incrementing an enqueue or dequeue pointer, if the next TRB is a
30 * equals the dequeue pointer.
33 * 1. When a consumer increments a dequeue pointer and encounters a toggle bit
50 * 2. Update dequeue pointer (which may update the ring cycle state) and
53 * updates event ring dequeue pointer. Controller is the consumer for the
127 * effect the ring dequeue or enqueue pointers.
150 if (!cdnsp_last_trb_on_seg(ring->deq_seg, ring->dequeue)) {
151 ring->dequeue++;
155 if (cdnsp_last_trb_on_ring(ring, ring->deq_seg, ring->dequeue))
159 ring->dequeue = ring->deq_seg->trbs;
164 if (!cdnsp_trb_is_link(ring->dequeue)) {
165 ring->dequeue++;
168 while (cdnsp_trb_is_link(ring->dequeue)) {
170 ring->dequeue = ring->deq_seg->trbs;
201 /* Update the dequeue pointer further if that was a link TRB */
234 * enqueue pointer will not advance into dequeue segment.
246 num_trbs_in_deq_seg = ring->dequeue - ring->deq_seg->trbs;
393 * Get the hw dequeue pointer controller stopped on, either directly from the
416 * Move the controller endpoint ring dequeue pointer past cur_td.
417 * Record the new state of the controller endpoint ring dequeue segment,
418 * dequeue pointer, and new consumer cycle state in state.
419 * Update internal representation of the ring's dequeue pointer.
427 * - Finally we move the dequeue state one TRB further, toggling the cycle bit
453 new_deq = ep_ring->dequeue;
482 if (new_deq == pep->ring->dequeue) {
484 "Error: Failed finding new dequeue state\n");
654 * Update the ring's dequeue segment and dequeue pointer
659 if (cdnsp_trb_is_link(ep_ring->dequeue)) {
661 ep_ring->dequeue = ep_ring->deq_seg->trbs;
664 while (ep_ring->dequeue != deq_state->new_deq_ptr) {
666 ep_ring->dequeue++;
668 if (cdnsp_trb_is_link(ep_ring->dequeue)) {
669 if (ep_ring->dequeue == deq_state->new_deq_ptr)
673 ep_ring->dequeue = ep_ring->deq_seg->trbs;
712 * move the controller endpoint ring dequeue pointer past
737 * have to worry about updating dequeue pointer.
933 * the ring dequeue pointer or take this TD off any lists yet.
938 /* Update ring dequeue pointer */
939 while (ep_ring->dequeue != td->last_trb)
947 /* sum trb lengths from ring dequeue up to stop_trb, _excluding_ stop_trb */
953 union cdnsp_trb *trb = ring->dequeue;
1116 /* Update ring dequeue pointer */
1117 while (ep_ring->dequeue != td->last_trb)
1333 ep_ring->dequeue, td->last_trb,
1352 * of FSE is not in the current TD pointed by ep_ring->dequeue
1353 * because that the hardware dequeue pointer still at the
1406 * Do not update event ring dequeue pointer if we're in a loop
1425 pdev->event_ring->dequeue),
1447 event = pdev->event_ring->dequeue;
1467 * increment command ring dequeue pointer.
1515 /* Update SW event ring dequeue pointer. */
1549 event_ring_deq = pdev->event_ring->dequeue;
1554 event_ring_deq = pdev->event_ring->dequeue;