Home | History | Annotate | Download | only in DebugCommunicationLibUsb3

Lines Matching refs:Ring

17   Synchronize the specified transfer ring to update the enqueue and dequeue pointer.

20 @param TrsRing The transfer ring to sync.
22 @retval EFI_SUCCESS The transfer ring is synchronized successfully.
80 Synchronize the specified event ring to update the enqueue and dequeue pointer.
83 @param EvtRing The event ring to sync.
85 @retval EFI_SUCCESS The event ring is synchronized successfully.
132 @param EvtRing The event ring to check.
135 @retval EFI_SUCCESS Found a new event TRB at the event ring.
136 @retval EFI_NOT_READY The event ring has no new event.
163 // If the dequeue pointer is beyond the ring, then roll-back it to the begining of the ring.
175 @param Ring The transfer ring to be checked.
184 IN TRANSFER_RING *Ring,
191 CheckedTrb = (TRB_TEMPLATE *)(UINTN) Ring->RingSeg0;
193 ASSERT (Ring->TrbNumber == TR_RING_TRB_NUMBER);
195 for (Index = 0; Index < Ring->TrbNumber; Index++) {
237 // Traverse the event ring to find out all new events from the previous check.
257 if (IsTrbInTrsRing ((TRANSFER_RING *)(UINTN)(Urb->Ring), TRBPtr)) {
259 } else if (IsTrbInTrsRing ((TRANSFER_RING *)(UINTN)(Handle->UrbIn.Ring), TRBPtr)) {
292 // Advance event ring to last available entry
312 Ring the door bell to notify XHCI there is a transaction to be executed.
317 @retval EFI_SUCCESS Successfully ring the door bell.
358 TRANSFER_RING *Ring;
369 // Event Ring Not Empty bit can only be set to 1 by XHC after ringing door bell with some delay.
385 // If URB transfer is error, restore transfer ring to original value before URB transfer
386 // This will make the current transfer TRB is always at the latest unused one in transfer ring.
388 Ring = (TRANSFER_RING *)(UINTN) Urb->Ring;
393 Ring->RingEnqueue = Urb->Trb;
398 Trb->CycleBit = ((~Ring->RingPCS) & BIT0);
401 // Update transfer ring for next transfer.
403 XhcSyncTrsRing (Handle, Ring);
431 Urb->Ring = (EFI_PHYSICAL_ADDRESS)(UINTN) EPRing;