aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/usb/host/r8a66597-hcd.c
diff options
context:
space:
mode:
authorAlan Stern <stern@rowland.harvard.edu>2007-08-24 15:42:24 -0400
committerGreg Kroah-Hartman <gregkh@suse.de>2007-10-12 17:55:23 -0400
commit4a00027dcb088bf90fa8fb14a7e8ba3506d78f22 (patch)
tree992b3dbda7b950b8906ac4751e43a28fd15e2e5d /drivers/usb/host/r8a66597-hcd.c
parent9347d51c52afcf1a77d2104f162cf8a085624c83 (diff)
USB: Eliminate urb->status usage!
This patch (as979) removes the last vestiges of urb->status from the host controller drivers and the root-hub emulator. Now the field doesn't get set until just before the URB's completion routine is called. Signed-off-by: Alan Stern <stern@rowland.harvard.edu> CC: David Brownell <david-b@pacbell.net> CC: Olav Kongas <ok@artecdesign.ee> CC: Yoshihiro Shimoda <shimoda.yoshihiro@renesas.com> CC: Tony Olech <tony.olech@elandigitalsystems.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
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