blob: 433ba580902f98932c25a02f057cea94c3e01f41 [file] [log] [blame]
From 3785f93447efda502d8ace0118e23959d18d38c5 Mon Sep 17 00:00:00 2001
From: Lu Baolu <baolu.lu@linux.intel.com>
Date: Fri, 7 Apr 2017 17:57:06 +0300
Subject: [PATCH 192/286] usb: xhci: remove enq_updates and deq_updates from
ring
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>
(cherry picked from commit cd12fd9f6d05d1b2b9ff2630802c55b5fd2e534c)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
---
drivers/usb/host/xhci-dbg.c | 8 --------
drivers/usb/host/xhci-mem.c | 3 ---
drivers/usb/host/xhci-ring.c | 3 ---
drivers/usb/host/xhci.h | 2 --
4 files changed, 16 deletions(-)
--- a/drivers/usb/host/xhci-dbg.c
+++ b/drivers/usb/host/xhci-dbg.c
@@ -347,14 +347,10 @@ void xhci_dbg_ring_ptrs(struct xhci_hcd
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 *xh
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);
}
--- a/drivers/usb/host/xhci-mem.c
+++ b/drivers/usb/host/xhci-mem.c
@@ -315,9 +315,6 @@ static void xhci_initialize_ring_info(st
* 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
--- a/drivers/usb/host/xhci-ring.c
+++ b/drivers/usb/host/xhci-ring.c
@@ -167,8 +167,6 @@ static void next_trb(struct xhci_hcd *xh
*/
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 *xhc
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)) {
--- a/drivers/usb/host/xhci.h
+++ b/drivers/usb/host/xhci.h
@@ -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