diff options
Diffstat (limited to 'drivers/usb/host/ohci-q.c')
-rw-r--r-- | drivers/usb/host/ohci-q.c | 11 |
1 files changed, 0 insertions, 11 deletions
diff --git a/drivers/usb/host/ohci-q.c b/drivers/usb/host/ohci-q.c index 889c0720743b..8aad6199cdcc 100644 --- a/drivers/usb/host/ohci-q.c +++ b/drivers/usb/host/ohci-q.c | |||
@@ -43,21 +43,10 @@ __acquires(ohci->lock) | |||
43 | // ASSERT (urb->hcpriv != 0); | 43 | // ASSERT (urb->hcpriv != 0); |
44 | 44 | ||
45 | urb_free_priv (ohci, urb->hcpriv); | 45 | urb_free_priv (ohci, urb->hcpriv); |
46 | urb->hcpriv = NULL; | ||
47 | 46 | ||
48 | spin_lock (&urb->lock); | 47 | spin_lock (&urb->lock); |
49 | if (likely (urb->status == -EINPROGRESS)) | 48 | if (likely (urb->status == -EINPROGRESS)) |
50 | urb->status = 0; | 49 | urb->status = 0; |
51 | /* report short control reads right even though the data TD always | ||
52 | * has TD_R set. (much simpler, but creates the 1-td limit.) | ||
53 | */ | ||
54 | if (unlikely (urb->transfer_flags & URB_SHORT_NOT_OK) | ||
55 | && unlikely (usb_pipecontrol (urb->pipe)) | ||
56 | && urb->actual_length < urb->transfer_buffer_length | ||
57 | && usb_pipein (urb->pipe) | ||
58 | && urb->status == 0) { | ||
59 | urb->status = -EREMOTEIO; | ||
60 | } | ||
61 | spin_unlock (&urb->lock); | 50 | spin_unlock (&urb->lock); |
62 | 51 | ||
63 | switch (usb_pipetype (urb->pipe)) { | 52 | switch (usb_pipetype (urb->pipe)) { |