|
@@ -264,15 +264,9 @@ ehci_urb_done(struct ehci_hcd *ehci, struct urb *urb, int status)
|
|
|
__releases(ehci->lock)
|
|
|
__acquires(ehci->lock)
|
|
|
{
|
|
|
- if (likely (urb->hcpriv != NULL)) {
|
|
|
- struct ehci_qh *qh = (struct ehci_qh *) urb->hcpriv;
|
|
|
-
|
|
|
- /* S-mask in a QH means it's an interrupt urb */
|
|
|
- if ((qh->hw->hw_info2 & cpu_to_hc32(ehci, QH_SMASK)) != 0) {
|
|
|
-
|
|
|
- /* ... update hc-wide periodic stats (for usbfs) */
|
|
|
- ehci_to_hcd(ehci)->self.bandwidth_int_reqs--;
|
|
|
- }
|
|
|
+ if (usb_pipetype(urb->pipe) == PIPE_INTERRUPT) {
|
|
|
+ /* ... update hc-wide periodic stats */
|
|
|
+ ehci_to_hcd(ehci)->self.bandwidth_int_reqs--;
|
|
|
}
|
|
|
|
|
|
if (unlikely(urb->unlinked)) {
|