next = ring->dequeue;
        }
        addr = (unsigned long long) xhci_trb_virt_to_dma(ring->deq_seg, ring->dequeue);
-       if (ring == xhci->cmd_ring)
-               xhci_dbg(xhci, "Command ring deq = 0x%llx (DMA)\n", addr);
-       else
-               xhci_dbg(xhci, "Ring deq = 0x%llx (DMA)\n", addr);
 }
 
 /*
                next = ring->enqueue;
        }
        addr = (unsigned long long) xhci_trb_virt_to_dma(ring->enq_seg, ring->enqueue);
-       if (ring == xhci->event_ring)
-               xhci_dbg(xhci, "Event ring enq = 0x%llx (DMA)\n", addr);
-       else if (ring == xhci->cmd_ring)
-               xhci_dbg(xhci, "Command ring enq = 0x%llx (DMA)\n", addr);
-       else
-               xhci_dbg(xhci, "Ring enq = 0x%llx (DMA)\n", addr);
 }
 
 /*
                        }
                }
                usb_hcd_unlink_urb_from_ep(hcd, urb);
-               xhci_dbg(xhci, "Giveback %s URB %p\n", adjective, urb);
 
                spin_unlock(&xhci->lock);
                usb_hcd_giveback_urb(hcd, urb, status);
                xhci_urb_free_priv(xhci, urb_priv);
                spin_lock(&xhci->lock);
-               xhci_dbg(xhci, "%s URB given back\n", adjective);
        }
 }
 
                                        "without IOC set??\n");
                        *status = -ESHUTDOWN;
                } else {
-                       xhci_dbg(xhci, "Successful control transfer!\n");
                        *status = 0;
                }
                break;
        switch (trb_comp_code) {
        case COMP_SUCCESS:
                frame->status = 0;
-               xhci_dbg(xhci, "Successful isoc transfer!\n");
                break;
        case COMP_SHORT_TX:
                frame->status = td->urb->transfer_flags & URB_SHORT_NOT_OK ?
                        else
                                *status = 0;
                } else {
-                       if (usb_endpoint_xfer_bulk(&td->urb->ep->desc))
-                               xhci_dbg(xhci, "Successful bulk "
-                                               "transfer!\n");
-                       else
-                               xhci_dbg(xhci, "Successful interrupt "
-                                               "transfer!\n");
                        *status = 0;
                }
                break;
                /* Others already handled above */
                break;
        }
-       xhci_dbg(xhci, "ep %#x - asked for %d bytes, "
-                       "%d bytes untransferred\n",
-                       td->urb->ep->desc.bEndpointAddress,
-                       td->urb->transfer_buffer_length,
-                TRB_LEN(le32_to_cpu(event->transfer_len)));
+       if (trb_comp_code == COMP_SHORT_TX)
+               xhci_dbg(xhci, "ep %#x - asked for %d bytes, "
+                               "%d bytes untransferred\n",
+                               td->urb->ep->desc.bEndpointAddress,
+                               td->urb->transfer_buffer_length,
+                               TRB_LEN(le32_to_cpu(event->transfer_len)));
        /* Fast path - was this the last TRB in the TD for this URB? */
        if (event_trb == td->last_trb) {
                if (TRB_LEN(le32_to_cpu(event->transfer_len)) != 0) {
 
        /* Endpoint ID is 1 based, our index is zero based */
        ep_index = TRB_TO_EP_ID(le32_to_cpu(event->flags)) - 1;
-       xhci_dbg(xhci, "%s - ep index = %d\n", __func__, ep_index);
        ep = &xdev->eps[ep_index];
        ep_ring = xhci_dma_to_transfer_ring(ep, le64_to_cpu(event->buffer));
        ep_ctx = xhci_get_ep_ctx(xhci, xdev->out_ctx, ep_index);
                                xhci_urb_free_priv(xhci, urb_priv);
 
                        usb_hcd_unlink_urb_from_ep(bus_to_hcd(urb->dev->bus), urb);
-                       xhci_dbg(xhci, "Giveback URB %p, len = %d, "
-                                       "status = %d\n",
-                                       urb, urb->actual_length, status);
+                       if ((urb->actual_length != urb->transfer_buffer_length &&
+                                               (urb->transfer_flags &
+                                                URB_SHORT_NOT_OK)) ||
+                                       status != 0)
+                               xhci_dbg(xhci, "Giveback URB %p, len = %d, "
+                                               "expected = %x, status = %d\n",
+                                               urb, urb->actual_length,
+                                               urb->transfer_buffer_length,
+                                               status);
                        spin_unlock(&xhci->lock);
                        usb_hcd_giveback_urb(bus_to_hcd(urb->dev->bus), urb, status);
                        spin_lock(&xhci->lock);
                u32 ep_state, unsigned int num_trbs, gfp_t mem_flags)
 {
        /* Make sure the endpoint has been added to xHC schedule */
-       xhci_dbg(xhci, "Endpoint state = 0x%x\n", ep_state);
        switch (ep_state) {
        case EP_STATE_DISABLED:
                /*
                struct xhci_ring *ring = ep_ring;
                union xhci_trb *next;
 
-               xhci_dbg(xhci, "prepare_ring: pointing to link trb\n");
                next = ring->enqueue;
 
                while (last_trb(xhci, ring, ring->enq_seg, next)) {