aboutsummaryrefslogtreecommitdiffstats
path: root/usb.current
diff options
Diffstat (limited to 'usb.current')
-rw-r--r--usb.current/ohci-fix-problem-if-sm501-and-another-platform-driver-is-selected.patch73
-rw-r--r--usb.current/sisusbvga-fix-oops-on-disconnect.patch35
-rw-r--r--usb.current/usb-add-a-pl2303-device-id.patch36
-rw-r--r--usb.current/usb-adding-comment-for-ipaq-forcing-number-of-ports.patch33
-rw-r--r--usb.current/usb-another-option-device-id.patch25
-rw-r--r--usb.current/usb-don-t-lose-disconnections-during-suspend.patch49
-rw-r--r--usb.current/usb-ehci-fix-timer-regression.patch63
-rw-r--r--usb.current/usb-fix-cdc-acm-resume.patch33
-rw-r--r--usb.current/usb-fix-interrupt-disabling-for-hcds-with-shared-interrupt-handlers.patch95
-rw-r--r--usb.current/usb-fix-oops-on-loading-ipaq-module-since-2.6.26.patch30
-rw-r--r--usb.current/usb-mass-storage-new-id-for-us_sc_cyp_atacb.patch41
-rw-r--r--usb.current/usb-new-device-id-for-ftdi_sio-driver.patch67
-rw-r--r--usb.current/usb-ohci-record-data-toggle-after-unlink.patch69
13 files changed, 0 insertions, 649 deletions
diff --git a/usb.current/ohci-fix-problem-if-sm501-and-another-platform-driver-is-selected.patch b/usb.current/ohci-fix-problem-if-sm501-and-another-platform-driver-is-selected.patch
deleted file mode 100644
index 7821beda1119b3..00000000000000
--- a/usb.current/ohci-fix-problem-if-sm501-and-another-platform-driver-is-selected.patch
+++ /dev/null
@@ -1,73 +0,0 @@
-From ben-linux@fluff.org Fri Jun 13 17:39:48 2008
-From: Ben Dooks <ben-linux@fluff.org>
-Date: Sun, 08 Jun 2008 17:20:11 +0100
-Subject: OHCI: Fix problem if SM501 and another platform driver is selected
-To: linux-usb@vger.kernel.org
-Cc: Ben Dooks <ben-linux@fluff.org>
-Message-ID: <20080608162011.190329883@fluff.org.uk>
-
-From: Ben Dooks <ben-linux@fluff.org>
-
-If the SM501 and another platform driver, such as the SM501
-then we end up defining PLATFORM_DRIVER twice. This patch
-seperated the SM501 onto a seperate define of SM501_OHCI_DRIVER
-so that it can be selected without overwriting the original
-definition.
-
-Signed-off-by: Ben Dooks <ben-linux@fluff.org>
-Acked-by: David Brownell <dbrownell@users.sourceforge.net>
-Cc: stable <stable@kernel.org>
-Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-
----
- drivers/usb/host/ohci-hcd.c | 15 ++++++++++++++-
- 1 file changed, 14 insertions(+), 1 deletion(-)
-
---- a/drivers/usb/host/ohci-hcd.c
-+++ b/drivers/usb/host/ohci-hcd.c
-@@ -1054,7 +1054,7 @@ MODULE_LICENSE ("GPL");
-
- #ifdef CONFIG_MFD_SM501
- #include "ohci-sm501.c"
--#define PLATFORM_DRIVER ohci_hcd_sm501_driver
-+#define SM501_OHCI_DRIVER ohci_hcd_sm501_driver
- #endif
-
- #if !defined(PCI_DRIVER) && \
-@@ -1062,6 +1062,7 @@ MODULE_LICENSE ("GPL");
- !defined(OF_PLATFORM_DRIVER) && \
- !defined(SA1111_DRIVER) && \
- !defined(PS3_SYSTEM_BUS_DRIVER) && \
-+ !defined(SM501_OHCI_DRIVER) && \
- !defined(SSB_OHCI_DRIVER)
- #error "missing bus glue for ohci-hcd"
- #endif
-@@ -1121,9 +1122,18 @@ static int __init ohci_hcd_mod_init(void
- goto error_ssb;
- #endif
-
-+#ifdef SM501_OHCI_DRIVER
-+ retval = platform_driver_register(&SM501_OHCI_DRIVER);
-+ if (retval < 0)
-+ goto error_sm501;
-+#endif
-+
- return retval;
-
- /* Error path */
-+#ifdef SM501_OHCI_DRIVER
-+ error_sm501:
-+#endif
- #ifdef SSB_OHCI_DRIVER
- error_ssb:
- #endif
-@@ -1159,6 +1169,9 @@ module_init(ohci_hcd_mod_init);
-
- static void __exit ohci_hcd_mod_exit(void)
- {
-+#ifdef SM501_OHCI_DRIVER
-+ platform_driver_unregister(&SM501_OHCI_DRIVER);
-+#endif
- #ifdef SSB_OHCI_DRIVER
- ssb_driver_unregister(&SSB_OHCI_DRIVER);
- #endif
diff --git a/usb.current/sisusbvga-fix-oops-on-disconnect.patch b/usb.current/sisusbvga-fix-oops-on-disconnect.patch
deleted file mode 100644
index 70633160bb1875..00000000000000
--- a/usb.current/sisusbvga-fix-oops-on-disconnect.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-From will.newton@imgtec.com Fri Jun 27 14:34:47 2008
-From: Will Newton <will.newton@imgtec.com>
-Date: Fri, 27 Jun 2008 13:08:08 +0100
-Subject: sisusbvga: Fix oops on disconnect.
-To: linux-kernel@vger.kernel.org
-Cc: linux-usb@vger.kernel.org, felipe.lima@indt.org.br, gregkh@suse.de, Will Newton <will.newton@gmail.com>
-Message-ID: <1214568488-5356-1-git-send-email-will.newton@imgtec.com>
-
-
-From: Will Newton <will.newton@gmail.com>
-
-Remove dev_info call on disconnect. The sisusb_dev pointer may have been
-set to zero by sisusb_delete at this point causing an oops.
-
-The message does not provide any extra information over the standard USB
-subsystem output so removing it does not affect functionality.
-
-Signed-off-by: Will Newton <will.newton@gmail.com>
-Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-
----
- drivers/usb/misc/sisusbvga/sisusb.c | 2 --
- 1 file changed, 2 deletions(-)
-
---- a/drivers/usb/misc/sisusbvga/sisusb.c
-+++ b/drivers/usb/misc/sisusbvga/sisusb.c
-@@ -3264,8 +3264,6 @@ static void sisusb_disconnect(struct usb
-
- /* decrement our usage count */
- kref_put(&sisusb->kref, sisusb_delete);
--
-- dev_info(&sisusb->sisusb_dev->dev, "Disconnected\n");
- }
-
- static struct usb_device_id sisusb_table [] = {
diff --git a/usb.current/usb-add-a-pl2303-device-id.patch b/usb.current/usb-add-a-pl2303-device-id.patch
deleted file mode 100644
index a9bef669043799..00000000000000
--- a/usb.current/usb-add-a-pl2303-device-id.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From foo@baz Tue Apr 9 12:12:43 2002
-Date: Wed, 2 Jul 2008 15:25:41 -0500 (CDT)
-To: Greg KH <greg@kroah.com>
-From: Greg Kroah-Hartman <gregkh@suse.de>
-Subject: USB: add a pl2303 device id
-
-As reported by Ken A Scott <kscott9@sent.com>
-
-Cc: Ken A Scott <kscott9@sent.com>
-Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-
----
- drivers/usb/serial/pl2303.c | 1 +
- drivers/usb/serial/pl2303.h | 1 +
- 2 files changed, 2 insertions(+)
-
---- a/drivers/usb/serial/pl2303.c
-+++ b/drivers/usb/serial/pl2303.c
-@@ -57,6 +57,7 @@ static struct usb_device_id id_table []
- { USB_DEVICE(PL2303_VENDOR_ID, PL2303_PRODUCT_ID_PHAROS) },
- { USB_DEVICE(PL2303_VENDOR_ID, PL2303_PRODUCT_ID_ALDIGA) },
- { USB_DEVICE(PL2303_VENDOR_ID, PL2303_PRODUCT_ID_MMX) },
-+ { USB_DEVICE(PL2303_VENDOR_ID, PL2303_PRODUCT_ID_GPRS) },
- { USB_DEVICE(IODATA_VENDOR_ID, IODATA_PRODUCT_ID) },
- { USB_DEVICE(IODATA_VENDOR_ID, IODATA_PRODUCT_ID_RSAQ5) },
- { USB_DEVICE(ATEN_VENDOR_ID, ATEN_PRODUCT_ID) },
---- a/drivers/usb/serial/pl2303.h
-+++ b/drivers/usb/serial/pl2303.h
-@@ -15,6 +15,7 @@
- #define PL2303_PRODUCT_ID_RSAQ3 0xaaa2
- #define PL2303_PRODUCT_ID_ALDIGA 0x0611
- #define PL2303_PRODUCT_ID_MMX 0x0612
-+#define PL2303_PRODUCT_ID_GPRS 0x0609
-
- #define ATEN_VENDOR_ID 0x0557
- #define ATEN_VENDOR_ID2 0x0547
diff --git a/usb.current/usb-adding-comment-for-ipaq-forcing-number-of-ports.patch b/usb.current/usb-adding-comment-for-ipaq-forcing-number-of-ports.patch
deleted file mode 100644
index 993ce4e867762c..00000000000000
--- a/usb.current/usb-adding-comment-for-ipaq-forcing-number-of-ports.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From oliver@neukum.org Thu Jul 3 13:09:29 2008
-From: Oliver Neukum <oliver@neukum.org>
-Date: Thu, 3 Jul 2008 17:14:16 +0200
-Subject: USB: adding comment for ipaq forcing number of ports
-To: Adrian Bunk <bunk@kernel.org>
-Cc: Greg KH <greg@kroah.com>, linux-usb@vger.kernel.org
-Message-ID: <200807031714.16617.oliver@neukum.org>
-Content-Disposition: inline
-
-
-The reason for forcing a number of ports should be documented.
-
-Signed-off-by: Oliver Neukum <oneukum@suse.de>
-Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-
----
- drivers/usb/serial/ipaq.c | 5 +++++
- 1 file changed, 5 insertions(+)
-
---- a/drivers/usb/serial/ipaq.c
-+++ b/drivers/usb/serial/ipaq.c
-@@ -570,6 +570,11 @@ static struct usb_serial_driver ipaq_dev
- .description = "PocketPC PDA",
- .usb_driver = &ipaq_driver,
- .id_table = ipaq_id_table,
-+ /*
-+ * some devices have an extra endpoint, which
-+ * must be ignored as it would make the core
-+ * create a second port which oopses when used
-+ */
- .num_ports = 1,
- .open = ipaq_open,
- .close = ipaq_close,
diff --git a/usb.current/usb-another-option-device-id.patch b/usb.current/usb-another-option-device-id.patch
deleted file mode 100644
index 3ef3dd4c513fd4..00000000000000
--- a/usb.current/usb-another-option-device-id.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-From foo@baz Tue Apr 9 12:12:43 2002
-Date: Tue, 1 Jul 2008 13:11:56 +0530
-To: Greg KH <greg@kroah.com>
-From: Greg Kroah-Hartman <gregkh@suse.de>
-Subject: USB: another option device id
-
-Thanks to umesh b <umesh.kollam@gmail.com> for the information here.
-
-Cc: umesh b <umesh.kollam@gmail.com>
-Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-
----
- drivers/usb/serial/option.c | 1 +
- 1 file changed, 1 insertion(+)
-
---- a/drivers/usb/serial/option.c
-+++ b/drivers/usb/serial/option.c
-@@ -306,6 +306,7 @@ static struct usb_device_id option_ids[]
- { USB_DEVICE(BANDRICH_VENDOR_ID, BANDRICH_PRODUCT_C100_1) },
- { USB_DEVICE(BANDRICH_VENDOR_ID, BANDRICH_PRODUCT_C100_2) },
- { USB_DEVICE(KYOCERA_VENDOR_ID, KYOCERA_PRODUCT_KPC680) },
-+ { USB_DEVICE(QUALCOMM_VENDOR_ID, 0x6000)}, /* ZTE AC8700 */
- { USB_DEVICE(QUALCOMM_VENDOR_ID, 0x6613)}, /* Onda H600/ZTE MF330 */
- { USB_DEVICE(MAXON_VENDOR_ID, 0x6280) }, /* BP3-USB & BP3-EXT HSDPA */
- { USB_DEVICE(TELIT_VENDOR_ID, TELIT_PRODUCT_UC864E) },
diff --git a/usb.current/usb-don-t-lose-disconnections-during-suspend.patch b/usb.current/usb-don-t-lose-disconnections-during-suspend.patch
deleted file mode 100644
index 2c8061b12cdfbf..00000000000000
--- a/usb.current/usb-don-t-lose-disconnections-during-suspend.patch
+++ /dev/null
@@ -1,49 +0,0 @@
-From stern@rowland.harvard.edu Tue Jul 1 12:15:57 2008
-From: Alan Stern <stern@rowland.harvard.edu>
-Date: Tue, 1 Jul 2008 10:45:51 -0400 (EDT)
-Subject: USB: don't lose disconnections during suspend
-To: Greg KH <greg@kroah.com>
-Cc: Lukas Hejtmanek <xhejtman@ics.muni.cz>, USB list <linux-usb@vger.kernel.org>
-Message-ID: <Pine.LNX.4.44L0.0807011043290.2780-100000@iolanthe.rowland.org>
-
-
-This patch (as1111) fixes a bug in the hub driver. When a hub
-resumes, disconnections that occurred while the hub was suspended are
-lost.
-
-A completely different fix for this problem has already been accepted
-for 2.6.27; however the problem still needs to be handled in 2.6.26.
-
-Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
-Tested-by: Lukas Hejtmanek <xhejtman@ics.muni.cz>
-Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-
----
- drivers/usb/core/hub.c | 15 ++++-----------
- 1 file changed, 4 insertions(+), 11 deletions(-)
-
---- a/drivers/usb/core/hub.c
-+++ b/drivers/usb/core/hub.c
-@@ -713,18 +713,11 @@ static void hub_restart(struct usb_hub *
- }
-
- /* Was the power session lost while we were suspended? */
-- switch (type) {
-- case HUB_RESET_RESUME:
-- portstatus = 0;
-- portchange = USB_PORT_STAT_C_CONNECTION;
-- break;
-+ status = hub_port_status(hub, port1, &portstatus, &portchange);
-
-- case HUB_RESET:
-- case HUB_RESUME:
-- status = hub_port_status(hub, port1,
-- &portstatus, &portchange);
-- break;
-- }
-+ /* If the device is gone, khubd will handle it later */
-+ if (status == 0 && !(portstatus & USB_PORT_STAT_CONNECTION))
-+ continue;
-
- /* For "USB_PERSIST"-enabled children we must
- * mark the child device for reset-resume and
diff --git a/usb.current/usb-ehci-fix-timer-regression.patch b/usb.current/usb-ehci-fix-timer-regression.patch
deleted file mode 100644
index eef9b458b02ca0..00000000000000
--- a/usb.current/usb-ehci-fix-timer-regression.patch
+++ /dev/null
@@ -1,63 +0,0 @@
-From david-b@pacbell.net Thu Jun 19 11:57:42 2008
-From: David Brownell <david-b@pacbell.net>
-Date: Fri, 13 Jun 2008 23:56:48 -0700
-Subject: USB: ehci - fix timer regression
-To: Greg KH <greg@kroah.com>
-Message-ID: <200806132356.48712.david-b@pacbell.net>
-Content-Disposition: inline
-
-
-This patch fixes a regression in the EHCI driver's TIMER_IO_WATCHDOG
-behavior. The patch "USB: EHCI: add separate IAA watchdog timer" changed
-how that timer is handled, so that short timeouts on the remaining
-timer (unfortunately, overloaded) would never be used.
-
-This takes a more direct approach, reorganizing the code slightly to
-be explicit about only the I/O watchdog role now being overridable.
-It also replaces a now-obsolete comment describing older timer behavior.
-
-Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
-Cc: Alan Stern <stern@rowland.harvard.edu>
-Cc: Leonid <leonidv11@gmail.com>
-Cc: stable <stable@kernel.org>
-Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-
----
- drivers/usb/host/ehci.h | 19 ++++++++++---------
- 1 file changed, 10 insertions(+), 9 deletions(-)
-
---- a/drivers/usb/host/ehci.h
-+++ b/drivers/usb/host/ehci.h
-@@ -177,6 +177,15 @@ timer_action_done (struct ehci_hcd *ehci
- static inline void
- timer_action (struct ehci_hcd *ehci, enum ehci_timer_action action)
- {
-+ /* Don't override timeouts which shrink or (later) disable
-+ * the async ring; just the I/O watchdog. Note that if a
-+ * SHRINK were pending, OFF would never be requested.
-+ */
-+ if (timer_pending(&ehci->watchdog)
-+ && ((BIT(TIMER_ASYNC_SHRINK) | BIT(TIMER_ASYNC_OFF))
-+ & ehci->actions))
-+ return;
-+
- if (!test_and_set_bit (action, &ehci->actions)) {
- unsigned long t;
-
-@@ -192,15 +201,7 @@ timer_action (struct ehci_hcd *ehci, enu
- t = EHCI_SHRINK_JIFFIES;
- break;
- }
-- t += jiffies;
-- // all timings except IAA watchdog can be overridden.
-- // async queue SHRINK often precedes IAA. while it's ready
-- // to go OFF neither can matter, and afterwards the IO
-- // watchdog stops unless there's still periodic traffic.
-- if (time_before_eq(t, ehci->watchdog.expires)
-- && timer_pending (&ehci->watchdog))
-- return;
-- mod_timer (&ehci->watchdog, t);
-+ mod_timer(&ehci->watchdog, t + jiffies);
- }
- }
-
diff --git a/usb.current/usb-fix-cdc-acm-resume.patch b/usb.current/usb-fix-cdc-acm-resume.patch
deleted file mode 100644
index 9bcdddde2969b8..00000000000000
--- a/usb.current/usb-fix-cdc-acm-resume.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From oliver@neukum.org Thu Jun 19 12:06:07 2008
-From: Oliver Neukum <oliver@neukum.org>
-Date: Tue, 17 Jun 2008 22:30:48 +0200
-Subject: USB: fix cdc-acm resume()
-To: greg kh <greg@kroah.com>, Linux USB <linux-usb@vger.kernel.org>
-Message-ID: <200806172230.49447.oliver@neukum.org>
-Content-Disposition: inline
-
-
-cdc-acm has
-- a memory leak in resume()
-- will fail to reactivate the read code path if this is needed.
-his corrects it by deleting the useless relict code.
-
-Signed-off-by: Oliver Neukum <oneukum@suse.de>
-Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-
----
- drivers/usb/class/cdc-acm.c | 3 ---
- 1 file changed, 3 deletions(-)
-
---- a/drivers/usb/class/cdc-acm.c
-+++ b/drivers/usb/class/cdc-acm.c
-@@ -1125,9 +1125,6 @@ static void stop_data_traffic(struct acm
- for (i = 0; i < acm->rx_buflimit; i++)
- usb_kill_urb(acm->ru[i].urb);
-
-- INIT_LIST_HEAD(&acm->filled_read_bufs);
-- INIT_LIST_HEAD(&acm->spare_read_bufs);
--
- tasklet_enable(&acm->urb_task);
-
- cancel_work_sync(&acm->work);
diff --git a/usb.current/usb-fix-interrupt-disabling-for-hcds-with-shared-interrupt-handlers.patch b/usb.current/usb-fix-interrupt-disabling-for-hcds-with-shared-interrupt-handlers.patch
deleted file mode 100644
index d8c88d334ce6f0..00000000000000
--- a/usb.current/usb-fix-interrupt-disabling-for-hcds-with-shared-interrupt-handlers.patch
+++ /dev/null
@@ -1,95 +0,0 @@
-From Stefan.Becker@nokia.com Tue Jul 1 12:14:33 2008
-From: Stefan Becker <Stefan.Becker@nokia.com>
-Date: Tue, 01 Jul 2008 19:19:22 +0300
-Subject: USB: fix interrupt disabling for HCDs with shared interrupt handlers
-To: ext Alan Stern <stern@rowland.harvard.edu>, linux-usb@vger.kernel.org, ext Greg Kroah-Hartman <gregkh@suse.de>
-Cc: ext David Brownell <david-b@pacbell.net>, linux-kernel@vger.kernel.org, Linus Torvalds <torvalds@linux-foundation.org>, ext Leonardo Chiquitto <leonardo.lists@gmail.com>
-Message-ID: <486A590A.4090806@nokia.com>
-
-USB: fix interrupt disabling for HCDs with shared interrupt handlers
-
-As has been discussed several times on LKML, IRQF_SHARED | IRQF_DISABLED
-doesn't work reliably, i.e. a shared interrupt handler CAN'T be certain to
-be called with interrupts disabled. Most USB HCD handlers use IRQF_DISABLED
-and therefore havoc can break out if they share their interrupt with a
-handler that doesn't use it.
-
-On my test machine the yenta_socket interrupt handler (no IRQF_DISABLED)
-was registered before ehci_hcd and one uhci_hcd instance. Therefore all
-usb_hcd_irq() invocations for ehci_hcd and for one uhci_hcd instance
-happened with interrupts enabled. That led to random lockups as USB core
-HCD functions that acquire the same spinlock could be called twice
-from interrupt handlers.
-
-This patch updates usb_hcd_irq() to always disable/restore interrupts.
-usb_add_hcd() will silently remove any IRQF_DISABLED requested from HCD code.
-
-Signed-off-by: Stefan Becker <stefan.becker@nokia.com>
-Cc: stable <stable@kernel.org>
-Acked-by: David Brownell <david-b@pacbell.net>
-Acked-by: Alan Stern <stern@rowland.harvard.edu>
-Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-
----
- drivers/usb/core/hcd.c | 42 ++++++++++++++++++++++++++++++------------
- 1 file changed, 30 insertions(+), 12 deletions(-)
-
---- a/drivers/usb/core/hcd.c
-+++ b/drivers/usb/core/hcd.c
-@@ -1684,19 +1684,30 @@ EXPORT_SYMBOL_GPL(usb_bus_start_enum);
- irqreturn_t usb_hcd_irq (int irq, void *__hcd)
- {
- struct usb_hcd *hcd = __hcd;
-- int start = hcd->state;
-+ unsigned long flags;
-+ irqreturn_t rc;
-
-- if (unlikely(start == HC_STATE_HALT ||
-- !test_bit(HCD_FLAG_HW_ACCESSIBLE, &hcd->flags)))
-- return IRQ_NONE;
-- if (hcd->driver->irq (hcd) == IRQ_NONE)
-- return IRQ_NONE;
--
-- set_bit(HCD_FLAG_SAW_IRQ, &hcd->flags);
--
-- if (unlikely(hcd->state == HC_STATE_HALT))
-- usb_hc_died (hcd);
-- return IRQ_HANDLED;
-+ /* IRQF_DISABLED doesn't work correctly with shared IRQs
-+ * when the first handler doesn't use it. So let's just
-+ * assume it's never used.
-+ */
-+ local_irq_save(flags);
-+
-+ if (unlikely(hcd->state == HC_STATE_HALT ||
-+ !test_bit(HCD_FLAG_HW_ACCESSIBLE, &hcd->flags))) {
-+ rc = IRQ_NONE;
-+ } else if (hcd->driver->irq(hcd) == IRQ_NONE) {
-+ rc = IRQ_NONE;
-+ } else {
-+ set_bit(HCD_FLAG_SAW_IRQ, &hcd->flags);
-+
-+ if (unlikely(hcd->state == HC_STATE_HALT))
-+ usb_hc_died(hcd);
-+ rc = IRQ_HANDLED;
-+ }
-+
-+ local_irq_restore(flags);
-+ return rc;
- }
-
- /*-------------------------------------------------------------------------*/
-@@ -1860,6 +1871,13 @@ int usb_add_hcd(struct usb_hcd *hcd,
-
- /* enable irqs just before we start the controller */
- if (hcd->driver->irq) {
-+
-+ /* IRQF_DISABLED doesn't work as advertised when used together
-+ * with IRQF_SHARED. As usb_hcd_irq() will always disable
-+ * interrupts we can remove it here.
-+ */
-+ irqflags &= ~IRQF_DISABLED;
-+
- snprintf(hcd->irq_descr, sizeof(hcd->irq_descr), "%s:usb%d",
- hcd->driver->description, hcd->self.busnum);
- if ((retval = request_irq(irqnum, &usb_hcd_irq, irqflags,
diff --git a/usb.current/usb-fix-oops-on-loading-ipaq-module-since-2.6.26.patch b/usb.current/usb-fix-oops-on-loading-ipaq-module-since-2.6.26.patch
deleted file mode 100644
index d365689a683aaf..00000000000000
--- a/usb.current/usb-fix-oops-on-loading-ipaq-module-since-2.6.26.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From oliver@neukum.org Thu Jul 3 13:08:17 2008
-From: Oliver Neukum <oliver@neukum.org>
-Date: Thu, 3 Jul 2008 10:05:57 +0200
-Subject: USB: fix Oops on loading ipaq module since 2.6.26
-To: Adam Williamson <awilliamson@mandriva.com>
-Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>, Adrian Bunk <bunk@kernel.org>, Arjan van de Ven <arjan@infradead.org>, "Rafael J. Wysocki" <rjw@sisk.pl>, Alan Cox <alan@redhat.com>, bugme-daemon@bugzilla.kernel.org, Greg KH <greg@kroah.com>, linux-usb@vger.kernel.org
-Message-ID: <200807031005.59691.oliver@neukum.org>
-Content-Disposition: inline
-
-Fixes bugzilla.kernel.org #10868
-
-Signed-off-by: Oliver Neukum <oneukum@suse.de>
-Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-
-
----
- drivers/usb/serial/ipaq.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
---- a/drivers/usb/serial/ipaq.c
-+++ b/drivers/usb/serial/ipaq.c
-@@ -570,7 +570,7 @@ static struct usb_serial_driver ipaq_dev
- .description = "PocketPC PDA",
- .usb_driver = &ipaq_driver,
- .id_table = ipaq_id_table,
-- .num_ports = 2,
-+ .num_ports = 1,
- .open = ipaq_open,
- .close = ipaq_close,
- .attach = ipaq_startup,
diff --git a/usb.current/usb-mass-storage-new-id-for-us_sc_cyp_atacb.patch b/usb.current/usb-mass-storage-new-id-for-us_sc_cyp_atacb.patch
deleted file mode 100644
index 17b502ebcd5234..00000000000000
--- a/usb.current/usb-mass-storage-new-id-for-us_sc_cyp_atacb.patch
+++ /dev/null
@@ -1,41 +0,0 @@
-From castet.matthieu@free.fr Thu Jun 19 13:21:53 2008
-From: matthieu castet <castet.matthieu@free.fr>
-Date: Mon, 16 Jun 2008 19:49:06 +0200
-Subject: USB: mass storage: new id for US_SC_CYP_ATACB
-To: linux-usb@vger.kernel.org
-Message-ID: <4856A792.5020007@free.fr>
-
-
-
-CY7C68310 chip also support cypress atacb "ATA command" pass_thru.
-
-
-Signed-off-by: Matthieu CASTET <castet.matthieu@free.fr>
-Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-
----
- drivers/usb/storage/unusual_devs.h | 8 ++++++++
- 1 file changed, 8 insertions(+)
-
---- a/drivers/usb/storage/unusual_devs.h
-+++ b/drivers/usb/storage/unusual_devs.h
-@@ -402,11 +402,19 @@ UNUSUAL_DEV( 0x04a5, 0x3010, 0x0100, 0x
- US_FL_IGNORE_RESIDUE ),
-
- #ifdef CONFIG_USB_STORAGE_CYPRESS_ATACB
-+/* CY7C68300 : support atacb */
- UNUSUAL_DEV( 0x04b4, 0x6830, 0x0000, 0x9999,
- "Cypress",
- "Cypress AT2LP",
- US_SC_CYP_ATACB, US_PR_DEVICE, NULL,
- 0),
-+
-+/* CY7C68310 : support atacb and atacb2 */
-+UNUSUAL_DEV( 0x04b4, 0x6831, 0x0000, 0x9999,
-+ "Cypress",
-+ "Cypress ISD-300LP",
-+ US_SC_CYP_ATACB, US_PR_DEVICE, NULL,
-+ 0),
- #endif
-
- /* Reported by Simon Levitt <simon@whattf.com>
diff --git a/usb.current/usb-new-device-id-for-ftdi_sio-driver.patch b/usb.current/usb-new-device-id-for-ftdi_sio-driver.patch
deleted file mode 100644
index 075546fde1e358..00000000000000
--- a/usb.current/usb-new-device-id-for-ftdi_sio-driver.patch
+++ /dev/null
@@ -1,67 +0,0 @@
-From hellan@acm.org Fri Jun 27 15:17:23 2008
-From: Jon K Hellan <hellan@acm.org>
-Date: Tue, 24 Jun 2008 11:43:13 +0200
-Subject: USB: New device ID for ftdi_sio driver
-To: linux-usb@vger.kernel.org
-Message-ID: <4860C1B1.4060001@acm.org>
-
-From: Jon K Hellan <hellan@acm.org>
-
-Here's a new device ID for the ftdio_sio driver.
-The diff is with linus's tree as of this morning.
-
-The device is the RigExpert Tiny USB Soundcard Transceiver Interface for ham
-radio.
-
-(I didn't actually test this. A fellow ham couldn't get the device to work, and
-I suggested binding the device ID using sysfs - see
-"http://jk.ufisa.uninett.no/usb/". However, he had had moved on to other things
-by then. I guess adding the device ID to the kernel "on spec" won't hurt.
-The relevant part of cat /proc/bus/usb/devices shows:
-
-T: Bus=02 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 2 Spd=12 MxCh= 0
-D: Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1
-P: Vendor=0403 ProdID=ed22 Rev= 5.00
-S: Manufacturer=FTDI
-S: Product=MixW RigExpert Tiny
-S: SerialNumber=00000000
-C:* #Ifs= 2 Cfg#= 1 Atr=80 MxPwr=100mA
-I:* If#= 0 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=(none)
-E: Ad=81(I) Atr=02(Bulk) MxPS= 64 Ivl=0ms
-E: Ad=02(O) Atr=02(Bulk) MxPS= 64 Ivl=0ms
-I:* If#= 1 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=(none)
-E: Ad=83(I) Atr=02(Bulk) MxPS= 64 Ivl=0ms
-E: Ad=04(O) Atr=02(Bulk) MxPS= 64 Ivl=0ms
-)
-
-From: Jon K Hellan <hellan@acm.org>
-Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-
-
----
- drivers/usb/serial/ftdi_sio.c | 1 +
- drivers/usb/serial/ftdi_sio.h | 3 +++
- 2 files changed, 4 insertions(+)
-
---- a/drivers/usb/serial/ftdi_sio.c
-+++ b/drivers/usb/serial/ftdi_sio.c
-@@ -637,6 +637,7 @@ static struct usb_device_id id_table_com
- { USB_DEVICE(FTDI_VID, FTDI_OOCDLINK_PID),
- .driver_info = (kernel_ulong_t)&ftdi_jtag_quirk },
- { USB_DEVICE(RATOC_VENDOR_ID, RATOC_PRODUCT_ID_USB60F) },
-+ { USB_DEVICE(FTDI_VID, FTDI_REU_TINY_PID) },
- { }, /* Optional parameter entry */
- { } /* Terminating entry */
- };
---- a/drivers/usb/serial/ftdi_sio.h
-+++ b/drivers/usb/serial/ftdi_sio.h
-@@ -828,6 +828,9 @@
- /* Propox devices */
- #define FTDI_PROPOX_JTAGCABLEII_PID 0xD738
-
-+/* Rig Expert Ukraine devices */
-+#define FTDI_REU_TINY_PID 0xED22 /* RigExpert Tiny */
-+
- /* Commands */
- #define FTDI_SIO_RESET 0 /* Reset the port */
- #define FTDI_SIO_MODEM_CTRL 1 /* Set the modem control register */
diff --git a/usb.current/usb-ohci-record-data-toggle-after-unlink.patch b/usb.current/usb-ohci-record-data-toggle-after-unlink.patch
deleted file mode 100644
index 3c3305c95d8aa9..00000000000000
--- a/usb.current/usb-ohci-record-data-toggle-after-unlink.patch
+++ /dev/null
@@ -1,69 +0,0 @@
-From david-b@pacbell.net Thu Jun 19 11:58:10 2008
-From: David Brownell <david-b@pacbell.net>
-Date: Fri, 13 Jun 2008 23:59:54 -0700
-Subject: USB: ohci - record data toggle after unlink
-To: Greg KH <greg@kroah.com>
-Message-ID: <200806132359.54466.david-b@pacbell.net>
-Content-Disposition: inline
-
-
-From: David Brownell <dbrownell@users.sourceforge.net>
-
-This patch fixes a problem with OHCI where canceling bulk or
-interrupt URBs may lose track of the right data toggle. This
-seems to be a longstanding bug, possibly dating back to the
-Linux 2.4 kernel, which stayed hidden because
-
- (a) about half the time the data toggle bit was correct;
- (b) canceling such URBs is unusual; and
- (c) the few drivers which cancel these URBs either
- [1] do it only as part of shutting down, or
- [2] have fault recovery logic, which recovers.
-
-For those transfer types, the toggle is normally written back
-into the ED when each TD is retired. But canceling bypasses
-the mechanism used to retire TDs ... so on average, half the
-time the toggle bit will be invalid after cancelation.
-
-The fix is simple: the toggle state of any canceled TDs are
-propagated back to the ED in the finish_unlinks function.
-
-(Issue found by leonidv11@gmail.com ...)
-
-Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
-Cc: Leonid <leonidv11@gmail.com>
-Cc: stable <stable@kernel.org>
-Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-
----
- drivers/usb/host/ohci-q.c | 12 ++++++++++++
- 1 file changed, 12 insertions(+)
-
---- a/drivers/usb/host/ohci-q.c
-+++ b/drivers/usb/host/ohci-q.c
-@@ -952,6 +952,7 @@ rescan_this:
- struct urb *urb;
- urb_priv_t *urb_priv;
- __hc32 savebits;
-+ u32 tdINFO;
-
- td = list_entry (entry, struct td, td_list);
- urb = td->urb;
-@@ -966,6 +967,17 @@ rescan_this:
- savebits = *prev & ~cpu_to_hc32 (ohci, TD_MASK);
- *prev = td->hwNextTD | savebits;
-
-+ /* If this was unlinked, the TD may not have been
-+ * retired ... so manually save the data toggle.
-+ * The controller ignores the value we save for
-+ * control and ISO endpoints.
-+ */
-+ tdINFO = hc32_to_cpup(ohci, &td->hwINFO);
-+ if ((tdINFO & TD_T) == TD_T_DATA0)
-+ ed->hwHeadP &= ~cpu_to_hc32(ohci, ED_C);
-+ else if ((tdINFO & TD_T) == TD_T_DATA1)
-+ ed->hwHeadP |= cpu_to_hc32(ohci, ED_C);
-+
- /* HC may have partly processed this TD */
- td_done (ohci, urb, td);
- urb_priv->td_cnt++;