diff options
author | juhosg <juhosg@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2008-01-31 14:51:16 +0000 |
---|---|---|
committer | juhosg <juhosg@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2008-01-31 14:51:16 +0000 |
commit | fe28750ae5a5a71621fe8a23d188d9f2ea3eae43 (patch) | |
tree | e4b344488569863f8077ca6f73f193a97180afa0 /target/linux/adm5120/patches-2.6.24/911-usb_centralize_eremoteio_handling.patch | |
parent | ec0afcf3a79d12d2a294efc8ad3818c77e192a67 (diff) |
[adm5120] add 2.6.24 specific patchset for the usb driver
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@10338 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target/linux/adm5120/patches-2.6.24/911-usb_centralize_eremoteio_handling.patch')
-rw-r--r-- | target/linux/adm5120/patches-2.6.24/911-usb_centralize_eremoteio_handling.patch | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/target/linux/adm5120/patches-2.6.24/911-usb_centralize_eremoteio_handling.patch b/target/linux/adm5120/patches-2.6.24/911-usb_centralize_eremoteio_handling.patch new file mode 100644 index 000000000..b4e0fb089 --- /dev/null +++ b/target/linux/adm5120/patches-2.6.24/911-usb_centralize_eremoteio_handling.patch @@ -0,0 +1,30 @@ +Index: linux-2.6.24/drivers/usb/host/adm5120-q.c +=================================================================== +--- linux-2.6.24.orig/drivers/usb/host/adm5120-q.c ++++ linux-2.6.24/drivers/usb/host/adm5120-q.c +@@ -28,25 +28,10 @@ __releases(ahcd->lock) + __acquires(ahcd->lock) + { + urb_priv_free(ahcd, urb->hcpriv); +- urb->hcpriv = NULL; + + spin_lock(&urb->lock); + if (likely(urb->status == -EINPROGRESS)) + urb->status = 0; +- +- /* report short control reads right even though the data TD always +- * has TD_R set. (much simpler, but creates the 1-td limit.) +- */ +- if (unlikely(urb->transfer_flags & URB_SHORT_NOT_OK) +- && unlikely(usb_pipecontrol(urb->pipe)) +- && urb->actual_length < urb->transfer_buffer_length +- && usb_pipein(urb->pipe) +- && urb->status == 0) { +- urb->status = -EREMOTEIO; +-#ifdef ADMHC_VERBOSE_DEBUG +- urb_print(ahcd, urb, "SHORT", usb_pipeout(urb->pipe)); +-#endif +- } + spin_unlock(&urb->lock); + + switch (usb_pipetype(urb->pipe)) { |