@@ -626,11 +626,8 @@ static int xhci_move_dequeue_past_td(struct xhci_hcd *xhci,
626
626
struct xhci_ring * ep_ring ;
627
627
struct xhci_command * cmd ;
628
628
struct xhci_segment * new_seg ;
629
- struct xhci_segment * halted_seg = NULL ;
630
629
union xhci_trb * new_deq ;
631
630
int new_cycle ;
632
- union xhci_trb * halted_trb ;
633
- int index = 0 ;
634
631
dma_addr_t addr ;
635
632
u64 hw_dequeue ;
636
633
bool cycle_found = false;
@@ -668,27 +665,7 @@ static int xhci_move_dequeue_past_td(struct xhci_hcd *xhci,
668
665
hw_dequeue = xhci_get_hw_deq (xhci , dev , ep_index , stream_id );
669
666
new_seg = ep_ring -> deq_seg ;
670
667
new_deq = ep_ring -> dequeue ;
671
-
672
- /*
673
- * Quirk: xHC write-back of the DCS field in the hardware dequeue
674
- * pointer is wrong - use the cycle state of the TRB pointed to by
675
- * the dequeue pointer.
676
- */
677
- if (xhci -> quirks & XHCI_EP_CTX_BROKEN_DCS &&
678
- !(ep -> ep_state & EP_HAS_STREAMS ))
679
- halted_seg = trb_in_td (xhci , td -> start_seg ,
680
- td -> first_trb , td -> last_trb ,
681
- hw_dequeue & ~0xf , false);
682
- if (halted_seg ) {
683
- index = ((dma_addr_t )(hw_dequeue & ~0xf ) - halted_seg -> dma ) /
684
- sizeof (* halted_trb );
685
- halted_trb = & halted_seg -> trbs [index ];
686
- new_cycle = halted_trb -> generic .field [3 ] & 0x1 ;
687
- xhci_dbg (xhci , "Endpoint DCS = %d TRB index = %d cycle = %d\n" ,
688
- (u8 )(hw_dequeue & 0x1 ), index , new_cycle );
689
- } else {
690
- new_cycle = hw_dequeue & 0x1 ;
691
- }
668
+ new_cycle = hw_dequeue & 0x1 ;
692
669
693
670
/*
694
671
* We want to find the pointer, segment and cycle state of the new trb
0 commit comments