Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 254158
b: refs/heads/master
c: b3df3f9
h: refs/heads/master
v: v3
  • Loading branch information
Sarah Sharp committed Jun 17, 2011
1 parent 079639d commit 433ff5e
Show file tree
Hide file tree
Showing 2 changed files with 7 additions and 6 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: c877b3b2ad5cb9d4fe523c5496185cc328ff3ae9
refs/heads/master: b3df3f9c7df9a8d85e03e158d35487618a160901
11 changes: 6 additions & 5 deletions trunk/drivers/usb/host/xhci-ring.c
Original file line number Diff line number Diff line change
Expand Up @@ -1768,9 +1768,6 @@ static int process_isoc_td(struct xhci_hcd *xhci, struct xhci_td *td,
}
}

if ((idx == urb_priv->length - 1) && *status == -EINPROGRESS)
*status = 0;

return finish_td(xhci, td, event_trb, event, ep, status, false);
}

Expand All @@ -1788,8 +1785,7 @@ static int skip_isoc_td(struct xhci_hcd *xhci, struct xhci_td *td,
idx = urb_priv->td_cnt;
frame = &td->urb->iso_frame_desc[idx];

/* The transfer is partly done */
*status = -EXDEV;
/* The transfer is partly done. */
frame->status = -EXDEV;

/* calc actual length */
Expand Down Expand Up @@ -2177,6 +2173,11 @@ static int handle_tx_event(struct xhci_hcd *xhci,
urb->transfer_buffer_length,
status);
spin_unlock(&xhci->lock);
/* EHCI, UHCI, and OHCI always unconditionally set the
* urb->status of an isochronous endpoint to 0.
*/
if (usb_pipetype(urb->pipe) == PIPE_ISOCHRONOUS)
status = 0;
usb_hcd_giveback_urb(bus_to_hcd(urb->dev->bus), urb, status);
spin_lock(&xhci->lock);
}
Expand Down

0 comments on commit 433ff5e

Please sign in to comment.