aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/usb/host/r8a66597-hcd.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/usb/host/r8a66597-hcd.c')
-rw-r--r--drivers/usb/host/r8a66597-hcd.c8
1 files changed, 3 insertions, 5 deletions
diff --git a/drivers/usb/host/r8a66597-hcd.c b/drivers/usb/host/r8a66597-hcd.c
index fea6036771f6..fd00f1e33fb5 100644
--- a/drivers/usb/host/r8a66597-hcd.c
+++ b/drivers/usb/host/r8a66597-hcd.c
@@ -782,12 +782,12 @@ static void force_dequeue(struct r8a66597 *r8a66597, u16 pipenum, u16 address)
782 kfree(td); 782 kfree(td);
783 783
784 if (urb) { 784 if (urb) {
785 urb->status = -ENODEV;
786 usb_hcd_unlink_urb_from_ep(r8a66597_to_hcd(r8a66597), 785 usb_hcd_unlink_urb_from_ep(r8a66597_to_hcd(r8a66597),
787 urb); 786 urb);
788 787
789 spin_unlock(&r8a66597->lock); 788 spin_unlock(&r8a66597->lock);
790 usb_hcd_giveback_urb(r8a66597_to_hcd(r8a66597), urb); 789 usb_hcd_giveback_urb(r8a66597_to_hcd(r8a66597), urb,
790 -ENODEV);
791 spin_lock(&r8a66597->lock); 791 spin_lock(&r8a66597->lock);
792 } 792 }
793 break; 793 break;
@@ -1134,10 +1134,8 @@ __releases(r8a66597->lock) __acquires(r8a66597->lock)
1134 urb->start_frame = r8a66597_get_frame(hcd); 1134 urb->start_frame = r8a66597_get_frame(hcd);
1135 1135
1136 usb_hcd_unlink_urb_from_ep(r8a66597_to_hcd(r8a66597), urb); 1136 usb_hcd_unlink_urb_from_ep(r8a66597_to_hcd(r8a66597), urb);
1137
1138 urb->status = status;
1139 spin_unlock(&r8a66597->lock); 1137 spin_unlock(&r8a66597->lock);
1140 usb_hcd_giveback_urb(hcd, urb); 1138 usb_hcd_giveback_urb(hcd, urb, status);
1141 spin_lock(&r8a66597->lock); 1139 spin_lock(&r8a66597->lock);
1142 } 1140 }
1143 1141