usb: xhci: remove enq_updates and deq_updates from ring
authorLu Baolu <baolu.lu@linux.intel.com>
Fri, 7 Apr 2017 14:57:06 +0000 (17:57 +0300)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 8 Apr 2017 10:17:41 +0000 (12:17 +0200)
enq_updates and deq_updates were introduced in the first place
to check whether an xhci hardware is able to respond to trbs
enqueued in the ring. We now have trb tracers to trace every
single enqueue/dequeue trb. It's time to remove them and the
associated debugging code.

Signed-off-by: Lu Baolu <baolu.lu@linux.intel.com>
Signed-off-by: Mathias Nyman <mathias.nyman@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/usb/host/xhci-dbg.c
drivers/usb/host/xhci-mem.c
drivers/usb/host/xhci-ring.c
drivers/usb/host/xhci.h

index f6d30314348db9d914914d2cc594d601097bd472..21c563f9a98dba9b22b5317aaa189f7146730ce7 100644 (file)
@@ -347,14 +347,10 @@ void xhci_dbg_ring_ptrs(struct xhci_hcd *xhci, struct xhci_ring *ring)
                        ring->dequeue,
                        (unsigned long long)xhci_trb_virt_to_dma(ring->deq_seg,
                                                            ring->dequeue));
-       xhci_dbg(xhci, "Ring deq updated %u times\n",
-                       ring->deq_updates);
        xhci_dbg(xhci, "Ring enq = %p (virt), 0x%llx (dma)\n",
                        ring->enqueue,
                        (unsigned long long)xhci_trb_virt_to_dma(ring->enq_seg,
                                                            ring->enqueue));
-       xhci_dbg(xhci, "Ring enq updated %u times\n",
-                       ring->enq_updates);
 }
 
 /**
@@ -373,10 +369,6 @@ void xhci_debug_ring(struct xhci_hcd *xhci, struct xhci_ring *ring)
        struct xhci_segment *first_seg = ring->first_seg;
        xhci_debug_segment(xhci, first_seg);
 
-       if (!ring->enq_updates && !ring->deq_updates) {
-               xhci_dbg(xhci, "  Ring has not been updated\n");
-               return;
-       }
        for (seg = first_seg->next; seg != first_seg; seg = seg->next)
                xhci_debug_segment(xhci, seg);
 }
index 70501312f5e09358cc083ebda8a7a8e6623656f4..b88ec9ae5d4c9318c706a198be33591a0093e4cd 100644 (file)
@@ -315,9 +315,6 @@ static void xhci_initialize_ring_info(struct xhci_ring *ring,
         * handling ring expansion, set the cycle state equal to the old ring.
         */
        ring->cycle_state = cycle_state;
-       /* Not necessary for new rings, but needed for re-initialized rings */
-       ring->enq_updates = 0;
-       ring->deq_updates = 0;
 
        /*
         * Each segment has a link TRB, and leave an extra TRB for SW
index deb318e0c67939d5bbb427f47c71b2c666f78c7e..b382cf0715627f5332be84be053071be1e952e1e 100644 (file)
@@ -167,8 +167,6 @@ static void next_trb(struct xhci_hcd *xhci,
  */
 static void inc_deq(struct xhci_hcd *xhci, struct xhci_ring *ring)
 {
-       ring->deq_updates++;
-
        /* event ring doesn't have link trbs, check for last trb */
        if (ring->type == TYPE_EVENT) {
                if (!last_trb_on_seg(ring->deq_seg, ring->dequeue)) {
@@ -226,7 +224,6 @@ static void inc_enq(struct xhci_hcd *xhci, struct xhci_ring *ring,
                ring->num_trbs_free--;
        next = ++(ring->enqueue);
 
-       ring->enq_updates++;
        /* Update the dequeue pointer further if that was a link TRB */
        while (trb_is_link(next)) {
 
index dc69d3ca26598ec0b56afb4e9ae3d3f61fdea1b9..1a6446647ede0b611c33ecb1c1a7b10cfd67af0c 100644 (file)
@@ -1566,10 +1566,8 @@ struct xhci_ring {
        struct xhci_segment     *last_seg;
        union  xhci_trb         *enqueue;
        struct xhci_segment     *enq_seg;
-       unsigned int            enq_updates;
        union  xhci_trb         *dequeue;
        struct xhci_segment     *deq_seg;
-       unsigned int            deq_updates;
        struct list_head        td_list;
        /*
         * Write the cycle state into the TRB cycle field to give ownership of