aboutsummaryrefslogtreecommitdiffstats
diff options
authorGreg Kroah-Hartman <gregkh@suse.de>2007-05-24 09:21:48 -0700
committerGreg Kroah-Hartman <gregkh@suse.de>2007-05-24 09:21:48 -0700
commitf98767c047aa8fe50822ca8b9827b7bad707be4e (patch)
treee1c4dbd076555ed85ea773aa19d6860afa3a808e
parentb77a5850251518f5481bc06a34334fd2cc86faeb (diff)
downloadpatches-f98767c047aa8fe50822ca8b9827b7bad707be4e.tar.gz
usb patches merged to upstream and version resync
-rw-r--r--series35
-rw-r--r--usb/ehci-fix-problem-with-bios-handoff.patch64
-rw-r--r--usb/usb-add-support-for-olimex-arm-usb-ocd-jtag-interface-serial-port.patch125
-rw-r--r--usb/usb-add-support-for-sierra-wireless-aircard-595u.patch42
-rw-r--r--usb/usb-address-fixme-in-usbnet-w.r.t-drivers-claiming-multiple-interfaces.patch81
-rw-r--r--usb/usb-auerswald-fix-file-release-handler.patch43
-rw-r--r--usb/usb-deref-urb-after-usbmon-is-done-with-it.patch30
-rw-r--r--usb/usb-don-t-try-to-kzalloc-0-bytes.patch36
-rw-r--r--usb/usb-fix-debug-output-of-ark3116.patch34
-rw-r--r--usb/usb-fix-more-ftdi-elan-u132-hcd-include-lossage.patch80
-rw-r--r--usb/usb-fix-omninet-memory-leak-found-by-coverity.patch35
-rw-r--r--usb/usb-fix-ratelimit-call-semantics.patch37
-rw-r--r--usb/usb-fix-usb-ohci-subvendor-for-toshiba-portege-4000.patch42
-rw-r--r--usb/usb-fsl_usb2_udc-fix-umti_wide-support-and-a-compile-warning.patch49
-rw-r--r--usb/usb-ftdi_sio-add-usb-product-id-for-opendcc.patch44
-rw-r--r--usb/usb-handle-errors-in-power-level-attribute.patch49
-rw-r--r--usb/usb-handle-more-rndis_host-oddities.patch59
-rw-r--r--usb/usb-ldusb-bugfix.patch136
-rw-r--r--usb/usb-make-the-autosuspend-workqueue-thread-freezable.patch38
-rw-r--r--usb/usb-more-autosuspend-timer-stuff.patch76
-rw-r--r--usb/usb-new-device-pid-for-ftdi_sio-driver.patch48
-rw-r--r--usb/usb-onetouch-switch-to-using-input_dev-dev.parent.patch60
-rw-r--r--usb/usb-remove-duplicate-ids-from-option-card-driver.patch28
-rw-r--r--usb/usb-remove-short-initial-timeout-for-device-descriptor-fetch.patch55
-rw-r--r--usb/usb-remove-unneeded-warn_on.patch39
-rw-r--r--usb/usb-remove-usb-docbook-warnings.patch162
-rw-r--r--usb/usb-remove-useless-check-in-mos7840-found-by-coverity.patch32
-rw-r--r--usb/usb-set-the-correct-interrupt-interval-in-usb_bulk_msg.patch39
-rw-r--r--usb/usb-storage-ignore-sitecom-wl-117-usb-wlan.patch53
-rw-r--r--usb/usb-usblp-use-correct-dma-address-in-case-of-probe-error.patch30
-rw-r--r--version2
31 files changed, 4 insertions, 1679 deletions
diff --git a/series b/series
index 4944a2a2aa5cd4..c74e4f10488c55 100644
--- a/series
+++ b/series
@@ -67,46 +67,17 @@ pci/pci_bridge-device.patch
# usb patches queued for 2.6.22 (bugfixes, new ids, etc.)
-usb/usb-fix-omninet-memory-leak-found-by-coverity.patch
-usb/usb-remove-useless-check-in-mos7840-found-by-coverity.patch
-usb/usb-storage-ignore-sitecom-wl-117-usb-wlan.patch
-usb/usb-fix-more-ftdi-elan-u132-hcd-include-lossage.patch
-usb/usb-handle-more-rndis_host-oddities.patch
-usb/usb-remove-usb-docbook-warnings.patch
-usb/usb-address-fixme-in-usbnet-w.r.t-drivers-claiming-multiple-interfaces.patch
-usb/ehci-fix-problem-with-bios-handoff.patch
-usb/usb-more-autosuspend-timer-stuff.patch
-usb/usb-remove-unneeded-warn_on.patch
-usb/usb-new-device-pid-for-ftdi_sio-driver.patch
+
+
+# stuff after 2.6.22 is out
usb/usb-suspend-support-for-usb-serial.patch
-usb/usb-set-the-correct-interrupt-interval-in-usb_bulk_msg.patch
-usb/usb-fsl_usb2_udc-fix-umti_wide-support-and-a-compile-warning.patch
usb/usb-ehci-cpufreq-fix.patch
usb/usb-ehci-support-for-big-endian-descriptors.patch
-usb/usb-auerswald-fix-file-release-handler.patch
usb/usb-cxacru-add-documentation-file.patch
usb/usb-cxacru-cleanup-sysfs-attribute-code.patch
usb/usb-cxacru-create-sysfs-attributes-in-atm_start-instead-of-bind.patch
usb/usb-cxacru-ignore-error-trying-to-start-adsl-in-atm_start.patch
usb/usb-serial-keyspan-add-support-for-usa-49wg-usa-28xg.patch
-usb/usb-remove-duplicate-ids-from-option-card-driver.patch
-usb/usb-deref-urb-after-usbmon-is-done-with-it.patch
-usb/usb-remove-short-initial-timeout-for-device-descriptor-fetch.patch
-usb/usb-don-t-try-to-kzalloc-0-bytes.patch
-usb/usb-onetouch-switch-to-using-input_dev-dev.parent.patch
-usb/usb-fix-debug-output-of-ark3116.patch
-usb/usb-usblp-use-correct-dma-address-in-case-of-probe-error.patch
-usb/usb-fix-usb-ohci-subvendor-for-toshiba-portege-4000.patch
-usb/usb-make-the-autosuspend-workqueue-thread-freezable.patch
-usb/usb-handle-errors-in-power-level-attribute.patch
-usb/usb-fix-ratelimit-call-semantics.patch
-usb/usb-ftdi_sio-add-usb-product-id-for-opendcc.patch
-usb/usb-ldusb-bugfix.patch
-usb/usb-add-support-for-sierra-wireless-aircard-595u.patch
-usb/usb-add-support-for-olimex-arm-usb-ocd-jtag-interface-serial-port.patch
-
-
-# stuff after 2.6.22 is out
usb/usb-m66592-udc-peripheral-controller-driver-for-m66592.patch
usb/usb-r8a66597-hcd-host-controller-driver-for-r8a66597.patch
usb/usb-interface-pm-state.patch
diff --git a/usb/ehci-fix-problem-with-bios-handoff.patch b/usb/ehci-fix-problem-with-bios-handoff.patch
deleted file mode 100644
index 14e444e6997107..00000000000000
--- a/usb/ehci-fix-problem-with-bios-handoff.patch
+++ /dev/null
@@ -1,64 +0,0 @@
-From stern@rowland.harvard.edu Thu Apr 5 13:06:59 2007
-From: Alan Stern <stern@rowland.harvard.edu>
-Date: Thu, 5 Apr 2007 16:06:53 -0400 (EDT)
-Subject: EHCI: fix problem with BIOS handoff
-To: Greg KH <greg@kroah.com>, David Brownell <david-b@pacbell.net>
-Message-ID: <Pine.LNX.4.44L0.0704051605330.2495-100000@iolanthe.rowland.org>
-
-
-This patch (as882) fixes a problem with the EHCI BIOS handoff. On my
-machine, the BIOS configures the controller and the handoff fails,
-leaving the controller configured. During resume-from-disk, this
-confuses ehci-hcd into thinking that the controller has not been
-tampered with.
-
-The problem is fixed by turning off the Configured Flag whenever a
-BIOS handoff is attempted, whether it succeeds or not.
-
-Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
-Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
-Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-
----
- drivers/usb/host/pci-quirks.c | 9 +++++++++
- 1 file changed, 9 insertions(+)
-
---- a/drivers/usb/host/pci-quirks.c
-+++ b/drivers/usb/host/pci-quirks.c
-@@ -44,6 +44,7 @@
- #define EHCI_USBSTS 4 /* status register */
- #define EHCI_USBSTS_HALTED (1 << 12) /* HCHalted bit */
- #define EHCI_USBINTR 8 /* interrupt register */
-+#define EHCI_CONFIGFLAG 0x40 /* configured flag register */
- #define EHCI_USBLEGSUP 0 /* legacy support register */
- #define EHCI_USBLEGSUP_BIOS (1 << 16) /* BIOS semaphore */
- #define EHCI_USBLEGSUP_OS (1 << 24) /* OS semaphore */
-@@ -216,6 +217,7 @@ static void __devinit quirk_usb_disable_
- u32 hcc_params, val;
- u8 offset, cap_length;
- int count = 256/4;
-+ int tried_handoff = 0;
-
- if (!mmio_resource_enabled(pdev, 0))
- return;
-@@ -273,6 +275,7 @@ static void __devinit quirk_usb_disable_
- */
- msec = 5000;
- while ((cap & EHCI_USBLEGSUP_BIOS) && (msec > 0)) {
-+ tried_handoff = 1;
- msleep(10);
- msec -= 10;
- pci_read_config_dword(pdev, offset, &cap);
-@@ -292,6 +295,12 @@ static void __devinit quirk_usb_disable_
- pci_write_config_dword(pdev,
- offset + EHCI_USBLEGCTLSTS,
- 0);
-+
-+ /* If the BIOS ever owned the controller then we
-+ * can't expect any power sessions to remain intact.
-+ */
-+ if (tried_handoff)
-+ writel(0, op_reg_base + EHCI_CONFIGFLAG);
- break;
- case 0: /* illegal reserved capability */
- cap = 0;
diff --git a/usb/usb-add-support-for-olimex-arm-usb-ocd-jtag-interface-serial-port.patch b/usb/usb-add-support-for-olimex-arm-usb-ocd-jtag-interface-serial-port.patch
deleted file mode 100644
index 1b4997e62bac50..00000000000000
--- a/usb/usb-add-support-for-olimex-arm-usb-ocd-jtag-interface-serial-port.patch
+++ /dev/null
@@ -1,125 +0,0 @@
-From tony@atomide.com Fri May 4 18:23:57 2007
-From: Tony Lindgren <tony@atomide.com>
-Date: Fri, 4 May 2007 18:23:24 -0700
-Subject: USB: Add support for Olimex arm-usb-ocd JTAG interface serial port
-To: Greg KH <gregkh@suse.de>
-Message-ID: <20070505012323.GT12331@atomide.com>
-Content-Disposition: inline
-
-From: Tony Lindgren <tony@atomide.com>
-Subject: [PATCH] USB: Add support for Olimex arm-usb-ocd JTAG interface serial port
-
-This patch adds support for the serial port on Olimex arm-usb-ocd
-JTAG interface.
-
-The device appears as two serial ports, but the first one is reserved
-for the JTAG interface. The JTAG interface can be used with OpenOCD
-from userspace. For more information, please see:
-
-http://openocd.berlios.de/web/
-http://www.olimex.com/dev/arm-usb-ocd.html
-
-Signed-off-by: Tony Lindgren <tony@atomide.com>
-Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-
----
- drivers/usb/serial/ftdi_sio.c | 38 ++++++++++++++++++++++++++++++++++++--
- drivers/usb/serial/ftdi_sio.h | 4 ++++
- 2 files changed, 40 insertions(+), 2 deletions(-)
-
---- a/drivers/usb/serial/ftdi_sio.c
-+++ b/drivers/usb/serial/ftdi_sio.c
-@@ -273,12 +273,18 @@ static __u16 product;
-
- /* struct ftdi_sio_quirk is used by devices requiring special attention. */
- struct ftdi_sio_quirk {
-+ int (*probe)(struct usb_serial *);
- void (*setup)(struct usb_serial *); /* Special settings during startup. */
- };
-
-+static int ftdi_olimex_probe (struct usb_serial *serial);
- static void ftdi_USB_UIRT_setup (struct usb_serial *serial);
- static void ftdi_HE_TIRA1_setup (struct usb_serial *serial);
-
-+static struct ftdi_sio_quirk ftdi_olimex_quirk = {
-+ .probe = ftdi_olimex_probe,
-+};
-+
- static struct ftdi_sio_quirk ftdi_USB_UIRT_quirk = {
- .setup = ftdi_USB_UIRT_setup,
- };
-@@ -527,6 +533,8 @@ static struct usb_device_id id_table_com
- { USB_DEVICE(ELEKTOR_VID, ELEKTOR_FT323R_PID) },
- { USB_DEVICE(TELLDUS_VID, TELLDUS_TELLSTICK_PID) },
- { USB_DEVICE(FTDI_VID, FTDI_MAXSTREAM_PID) },
-+ { USB_DEVICE(OLIMEX_VID, OLIMEX_ARM_USB_OCD_PID),
-+ .driver_info = (kernel_ulong_t)&ftdi_olimex_quirk },
- { }, /* Optional parameter entry */
- { } /* Terminating entry */
- };
-@@ -671,7 +679,7 @@ static struct usb_serial_driver ftdi_sio
-
- /*
- * ***************************************************************************
-- * Utlity functions
-+ * Utility functions
- * ***************************************************************************
- */
-
-@@ -1173,9 +1181,17 @@ static void remove_sysfs_attrs(struct us
- /* Probe function to check for special devices */
- static int ftdi_sio_probe (struct usb_serial *serial, const struct usb_device_id *id)
- {
-+ struct ftdi_sio_quirk *quirk = (struct ftdi_sio_quirk *)id->driver_info;
-+
-+ if (quirk && quirk->probe) {
-+ int ret = quirk->probe(serial);
-+ if (ret != 0)
-+ return ret;
-+ }
-+
- usb_set_serial_data(serial, (void *)id->driver_info);
-
-- return (0);
-+ return 0;
- }
-
- static int ftdi_sio_port_probe(struct usb_serial_port *port)
-@@ -1270,6 +1286,24 @@ static void ftdi_HE_TIRA1_setup (struct
- priv->force_rtscts = 1;
- } /* ftdi_HE_TIRA1_setup */
-
-+/*
-+ * First port on Olimex arm-usb-ocd is reserved for JTAG interface
-+ * and can be accessed from userspace using openocd.
-+ */
-+static int ftdi_olimex_probe(struct usb_serial *serial)
-+{
-+ struct usb_device *udev = serial->dev;
-+ struct usb_interface *interface = serial->interface;
-+
-+ dbg("%s",__FUNCTION__);
-+
-+ if (interface == udev->actconfig->interface[0]) {
-+ info("Ignoring reserved serial port on Olimex arm-usb-ocd\n");
-+ return -ENODEV;
-+ }
-+
-+ return 0;
-+}
-
- /* ftdi_shutdown is called from usbserial:usb_serial_disconnect
- * it is called when the usb device is disconnected
---- a/drivers/usb/serial/ftdi_sio.h
-+++ b/drivers/usb/serial/ftdi_sio.h
-@@ -526,6 +526,10 @@
- */
- #define FTDI_MAXSTREAM_PID 0xEE18 /* Xbee PKG-U Module */
-
-+/* Olimex */
-+#define OLIMEX_VID 0x15BA
-+#define OLIMEX_ARM_USB_OCD_PID 0x0003
-+
- /* Commands */
- #define FTDI_SIO_RESET 0 /* Reset the port */
- #define FTDI_SIO_MODEM_CTRL 1 /* Set the modem control register */
diff --git a/usb/usb-add-support-for-sierra-wireless-aircard-595u.patch b/usb/usb-add-support-for-sierra-wireless-aircard-595u.patch
deleted file mode 100644
index a8bba8719e4e77..00000000000000
--- a/usb/usb-add-support-for-sierra-wireless-aircard-595u.patch
+++ /dev/null
@@ -1,42 +0,0 @@
-From linux-usb-devel-bounces@lists.sourceforge.net Fri May 4 13:10:46 2007
-From: Danny Budik <dbudik@ist-traffic.com>
-Date: Fri, 4 May 2007 16:09:37 -0400
-Subject: USB: Add support for Sierra Wireless Aircard 595U
-Cc: <linux@sierrawireless.com>
-Message-ID: <AE3F7377-AA70-4DEF-AC4E-6236C87BC46F@ist-traffic.com>
-
-
-From: Danny Budik <dbudik@ist-traffic.com>
-
-This patch adds support for the newly released Aircard 595U EVDO
-modem to the Sierra Wireless driver (sierra.c) in kernel 2.6.21.
-
-I suspect that my mailer may be mangling patches so let me know and
-I'll try to resend it.
-
-
-From: Danny Budik <dbudik@ist-traffic.com>
-Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-
----
- drivers/usb/serial/sierra.c | 2 ++
- 1 file changed, 2 insertions(+)
-
---- a/drivers/usb/serial/sierra.c
-+++ b/drivers/usb/serial/sierra.c
-@@ -35,6 +35,7 @@ static struct usb_device_id id_table []
- { USB_DEVICE(0x1199, 0x0218) }, /* Sierra Wireless MC5720 */
- { USB_DEVICE(0x1199, 0x0020) }, /* Sierra Wireless MC5725 */
- { USB_DEVICE(0x1199, 0x0019) }, /* Sierra Wireless AirCard 595 */
-+ { USB_DEVICE(0x1199, 0x0120) }, /* Sierra Wireless AirCard 595U */
- { USB_DEVICE(0x1199, 0x0021) }, /* Sierra Wireless AirCard 597E */
- { USB_DEVICE(0x1199, 0x6802) }, /* Sierra Wireless MC8755 */
- { USB_DEVICE(0x1199, 0x6804) }, /* Sierra Wireless MC8755 */
-@@ -60,6 +61,7 @@ static struct usb_device_id id_table_3po
- { USB_DEVICE(0x1199, 0x0218) }, /* Sierra Wireless MC5720 */
- { USB_DEVICE(0x1199, 0x0020) }, /* Sierra Wireless MC5725 */
- { USB_DEVICE(0x1199, 0x0019) }, /* Sierra Wireless AirCard 595 */
-+ { USB_DEVICE(0x1199, 0x0120) }, /* Sierra Wireless AirCard 595U */
- { USB_DEVICE(0x1199, 0x0021) }, /* Sierra Wireless AirCard 597E */
- { USB_DEVICE(0x1199, 0x6802) }, /* Sierra Wireless MC8755 */
- { USB_DEVICE(0x1199, 0x6804) }, /* Sierra Wireless MC8755 */
diff --git a/usb/usb-address-fixme-in-usbnet-w.r.t-drivers-claiming-multiple-interfaces.patch b/usb/usb-address-fixme-in-usbnet-w.r.t-drivers-claiming-multiple-interfaces.patch
deleted file mode 100644
index 0f7bbf57e83cf4..00000000000000
--- a/usb/usb-address-fixme-in-usbnet-w.r.t-drivers-claiming-multiple-interfaces.patch
+++ /dev/null
@@ -1,81 +0,0 @@
-From david-b@pacbell.net Mon Apr 30 01:37:56 2007
-From: Oliver Neukum <oneukum@suse.de>
-Date: Mon, 30 Apr 2007 01:37:44 -0700
-Subject: USB: address FIXME in usbnet w.r.t drivers claiming multiple interfaces
-To: Greg KH <greg@kroah.com>
-Cc: Oliver Neukum <oliver@suse.de>
-Message-ID: <200704300137.44952.david-b@pacbell.net>
-Content-Disposition: inline
-
-From: Oliver Neukum <oneukum@suse.de>
-
-This fixes the issue of drivers claiming multiple interfaces. Operations
-are stopped as soon as an interface is suspend and resumed only as
-all interfaces have been resumed.
-
-Signed-off-by: Oliver Neukum <oneukum@suse.de>
-Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
-Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-
----
- drivers/net/usb/usbnet.c | 25 +++++++++++++++----------
- drivers/net/usb/usbnet.h | 1 +
- 2 files changed, 16 insertions(+), 10 deletions(-)
-
---- a/drivers/net/usb/usbnet.c
-+++ b/drivers/net/usb/usbnet.c
-@@ -1252,20 +1252,23 @@ EXPORT_SYMBOL_GPL(usbnet_probe);
-
- /*-------------------------------------------------------------------------*/
-
--/* FIXME these suspend/resume methods assume non-CDC style
-- * devices, with only one interface.
-+/*
-+ * suspend the whole driver as soon as the first interface is suspended
-+ * resume only when the last interface is resumed
- */
-
- int usbnet_suspend (struct usb_interface *intf, pm_message_t message)
- {
- struct usbnet *dev = usb_get_intfdata(intf);
-
-- /* accelerate emptying of the rx and queues, to avoid
-- * having everything error out.
-- */
-- netif_device_detach (dev->net);
-- (void) unlink_urbs (dev, &dev->rxq);
-- (void) unlink_urbs (dev, &dev->txq);
-+ if (!dev->suspend_count++) {
-+ /* accelerate emptying of the rx and queues, to avoid
-+ * having everything error out.
-+ */
-+ netif_device_detach (dev->net);
-+ (void) unlink_urbs (dev, &dev->rxq);
-+ (void) unlink_urbs (dev, &dev->txq);
-+ }
- return 0;
- }
- EXPORT_SYMBOL_GPL(usbnet_suspend);
-@@ -1274,8 +1277,10 @@ int usbnet_resume (struct usb_interface
- {
- struct usbnet *dev = usb_get_intfdata(intf);
-
-- netif_device_attach (dev->net);
-- tasklet_schedule (&dev->bh);
-+ if (!--dev->suspend_count) {
-+ netif_device_attach (dev->net);
-+ tasklet_schedule (&dev->bh);
-+ }
- return 0;
- }
- EXPORT_SYMBOL_GPL(usbnet_resume);
---- a/drivers/net/usb/usbnet.h
-+++ b/drivers/net/usb/usbnet.h
-@@ -32,6 +32,7 @@ struct usbnet {
- const char *driver_name;
- wait_queue_head_t *wait;
- struct mutex phy_mutex;
-+ unsigned char suspend_count;
-
- /* i/o info: pipes etc */
- unsigned in, out;
diff --git a/usb/usb-auerswald-fix-file-release-handler.patch b/usb/usb-auerswald-fix-file-release-handler.patch
deleted file mode 100644
index bb9d6c8f851d5c..00000000000000
--- a/usb/usb-auerswald-fix-file-release-handler.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-From akpm@linux-foundation.org Thu May 10 23:04:45 2007
-Message-Id: <200705110604.l4B64Elu008275@shell0.pdx.osdl.net>
-Subject: USB: auerswald: fix file release handler
-To: greg@kroah.com
-Cc: akpm@linux-foundation.org, jirislaby@gmail.com
-From: akpm@linux-foundation.org
-Date: Thu, 10 May 2007 23:04:14 -0700
-
-From: Andrew Morton <akpm@linux-foundation.org>
-
-If this down_interruptible() does fail due to signal_pending() then the state
-of the driver will get trashed in interesting ways, because userspace cannot
-and will not retry the close().
-
-Cc: Jiri Slaby <jirislaby@gmail.com>
-Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
-Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-
----
- drivers/usb/misc/auerswald.c | 10 ++--------
- 1 file changed, 2 insertions(+), 8 deletions(-)
-
---- a/drivers/usb/misc/auerswald.c
-+++ b/drivers/usb/misc/auerswald.c
-@@ -1822,16 +1822,10 @@ static int auerchar_release (struct inod
- pauerswald_t cp;
- dbg("release");
-
-- /* get the mutexes */
-- if (down_interruptible (&ccp->mutex)) {
-- return -ERESTARTSYS;
-- }
-+ down(&ccp->mutex);
- cp = ccp->auerdev;
- if (cp) {
-- if (down_interruptible (&cp->mutex)) {
-- up (&ccp->mutex);
-- return -ERESTARTSYS;
-- }
-+ down(&cp->mutex);
- /* remove an open service */
- auerswald_removeservice (cp, &ccp->scontext);
- /* detach from device */
diff --git a/usb/usb-deref-urb-after-usbmon-is-done-with-it.patch b/usb/usb-deref-urb-after-usbmon-is-done-with-it.patch
deleted file mode 100644
index 73c0826097d66c..00000000000000
--- a/usb/usb-deref-urb-after-usbmon-is-done-with-it.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From zaitcev@redhat.com Fri May 11 22:08:03 2007
-Date: Fri, 11 May 2007 22:00:29 -0700
-From: Pete Zaitcev <zaitcev@redhat.com>
-To: greg@kroah.com
-Cc: zaitcev@redhat.com, linux-usb-devel@lists.sourceforge.net
-Subject: USB: Deref URB after usbmon is done with it
-Message-Id: <20070511220029.c26e8410.zaitcev@redhat.com>
-
-I haven't personally run across an oops because of this, but I feel safer
-with this fix in place.
-
-Signed-off-by: Pete Zaitcev <zaitcev@redhat.com>
-Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-
----
- drivers/usb/core/hcd.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
---- a/drivers/usb/core/hcd.c
-+++ b/drivers/usb/core/hcd.c
-@@ -1018,8 +1018,8 @@ done:
- atomic_dec (&urb->use_count);
- if (urb->reject)
- wake_up (&usb_kill_urb_queue);
-- usb_put_urb (urb);
- usbmon_urb_submit_error(&hcd->self, urb, status);
-+ usb_put_urb (urb);
- }
- return status;
- }
diff --git a/usb/usb-don-t-try-to-kzalloc-0-bytes.patch b/usb/usb-don-t-try-to-kzalloc-0-bytes.patch
deleted file mode 100644
index 74eb0052d9eed9..00000000000000
--- a/usb/usb-don-t-try-to-kzalloc-0-bytes.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From stern@rowland.harvard.edu Tue May 15 14:40:46 2007
-Date: Tue, 15 May 2007 17:40:37 -0400 (EDT)
-From: Alan Stern <stern@rowland.harvard.edu>
-To: Greg KH <greg@kroah.com>, Andrew Morton <akpm@linux-foundation.org>
-Subject: USB: don't try to kzalloc 0 bytes
-Message-ID: <Pine.LNX.4.44L0.0705151732060.5034-100000@iolanthe.rowland.org>
-
-This patch (as907) prevents us from trying to allocate 0 bytes
-when an interface has no endpoint descriptors.
-
-Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
-Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-
----
- drivers/usb/core/config.c | 10 ++++++----
- 1 file changed, 6 insertions(+), 4 deletions(-)
-
---- a/drivers/usb/core/config.c
-+++ b/drivers/usb/core/config.c
-@@ -185,10 +185,12 @@ static int usb_parse_interface(struct de
- num_ep = USB_MAXENDPOINTS;
- }
-
-- len = sizeof(struct usb_host_endpoint) * num_ep;
-- alt->endpoint = kzalloc(len, GFP_KERNEL);
-- if (!alt->endpoint)
-- return -ENOMEM;
-+ if (num_ep > 0) { /* Can't allocate 0 bytes */
-+ len = sizeof(struct usb_host_endpoint) * num_ep;
-+ alt->endpoint = kzalloc(len, GFP_KERNEL);
-+ if (!alt->endpoint)
-+ return -ENOMEM;
-+ }
-
- /* Parse all the endpoint descriptors */
- n = 0;
diff --git a/usb/usb-fix-debug-output-of-ark3116.patch b/usb/usb-fix-debug-output-of-ark3116.patch
deleted file mode 100644
index 55cfc412f15379..00000000000000
--- a/usb/usb-fix-debug-output-of-ark3116.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-From jengelh@linux01.gwdg.de Mon May 21 17:35:05 2007
-From: Jan Engelhardt <jengelh@linux01.gwdg.de>
-Date: Thu, 17 May 2007 17:16:44 +0200 (MEST)
-Subject: USB: Fix debug output of ark3116
-To: Greg KH <greg@kroah.com>
-Cc: <ark3116_driver@auctionant.de>
-Message-ID: <Pine.LNX.4.61.0705171704230.3231@yvahk01.tjqt.qr>
-
-From: Jan Engelhardt <jengelh@linux01.gwdg.de>
-
-Fix debug output. Previously, it would output "0xFFFFFFB0" on 32-bit
-archs (and probably "0xFFFFFFFFFFFFFFB0" on 64-bits), because buf is
-taken as signed char, which is promoted to signed int, while %x always
-expects an unsigned int.
-
-Signed-off-by: Jan Engelhardt <jengelh@gmx.de>
-Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-
----
- drivers/usb/serial/ark3116.c | 3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-
---- a/drivers/usb/serial/ark3116.c
-+++ b/drivers/usb/serial/ark3116.c
-@@ -63,7 +63,8 @@ static inline void ARK3116_RCV(struct us
- request, requesttype, value, index,
- buf, 0x0000001, 1000);
- if (result)
-- dbg("%03d < %d bytes [0x%02X]", seq, result, buf[0]);
-+ dbg("%03d < %d bytes [0x%02X]", seq, result,
-+ ((unsigned char *)buf)[0]);
- else
- dbg("%03d < 0 bytes", seq);
- }
diff --git a/usb/usb-fix-more-ftdi-elan-u132-hcd-include-lossage.patch b/usb/usb-fix-more-ftdi-elan-u132-hcd-include-lossage.patch
deleted file mode 100644
index bedc5919714bb4..00000000000000
--- a/usb/usb-fix-more-ftdi-elan-u132-hcd-include-lossage.patch
+++ /dev/null
@@ -1,80 +0,0 @@
-From david-b@pacbell.net Sun Apr 29 11:48:23 2007
-From: David Brownell <david-b@pacbell.net>
-Date: Sun, 29 Apr 2007 10:21:14 -0700
-Subject: USB: fix more ftdi-elan/u132-hcd #include lossage
-To: Greg KH <greg@kroah.com>
-Cc: linux-usb-devel@lists.sourceforge.net
-Message-ID: <200704291021.14400.david-b@pacbell.net>
-Content-Disposition: inline
-
-
-Partial fix for bogosity in the ftdi-elan and u132-hcd drivers ... these
-have no business including with the internals of other drivers, much less
-doing so in a broken way!!
-
-A previous patch resolved one build fix, this resolves another...
-
-Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
-Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-
----
- drivers/usb/host/u132-hcd.c | 12 +++++++-----
- drivers/usb/misc/ftdi-elan.c | 12 ++++++++----
- 2 files changed, 15 insertions(+), 9 deletions(-)
-
---- a/drivers/usb/host/u132-hcd.c
-+++ b/drivers/usb/host/u132-hcd.c
-@@ -57,6 +57,13 @@
- #include <asm/system.h>
- #include <asm/byteorder.h>
- #include "../core/hcd.h"
-+
-+ /* FIXME ohci.h is ONLY for internal use by the OHCI driver.
-+ * If you're going to try stuff like this, you need to split
-+ * out shareable stuff (register declarations?) into its own
-+ * file, maybe name <linux/usb/ohci.h>
-+ */
-+
- #include "ohci.h"
- #define OHCI_CONTROL_INIT OHCI_CTRL_CBSR
- #define OHCI_INTR_INIT (OHCI_INTR_MIE | OHCI_INTR_UE | OHCI_INTR_RD | \
-@@ -173,11 +180,6 @@ struct u132_ring {
- struct u132_endp *curr_endp;
- struct delayed_work scheduler;
- };
--#define OHCI_QUIRK_AMD756 0x01
--#define OHCI_QUIRK_SUPERIO 0x02
--#define OHCI_QUIRK_INITRESET 0x04
--#define OHCI_BIG_ENDIAN 0x08
--#define OHCI_QUIRK_ZFMICRO 0x10
- struct u132 {
- struct kref kref;
- struct list_head u132_list;
---- a/drivers/usb/misc/ftdi-elan.c
-+++ b/drivers/usb/misc/ftdi-elan.c
-@@ -73,6 +73,13 @@ static struct list_head ftdi_static_list
- #include "usb_u132.h"
- #include <asm/io.h>
- #include "../core/hcd.h"
-+
-+ /* FIXME ohci.h is ONLY for internal use by the OHCI driver.
-+ * If you're going to try stuff like this, you need to split
-+ * out shareable stuff (register declarations?) into its own
-+ * file, maybe name <linux/usb/ohci.h>
-+ */
-+
- #include "../host/ohci.h"
- /* Define these values to match your devices*/
- #define USB_FTDI_ELAN_VENDOR_ID 0x0403
-@@ -2300,10 +2307,7 @@ static int ftdi_elan_checkingPCI(struct
- offsetof(struct ohci_regs, member), 0, data);
- #define ftdi_write_pcimem(ftdi, member, data) ftdi_elan_write_pcimem(ftdi, \
- offsetof(struct ohci_regs, member), 0, data);
--#define OHCI_QUIRK_AMD756 0x01
--#define OHCI_QUIRK_SUPERIO 0x02
--#define OHCI_QUIRK_INITRESET 0x04
--#define OHCI_BIG_ENDIAN 0x08
-+
- #define OHCI_CONTROL_INIT OHCI_CTRL_CBSR
- #define OHCI_INTR_INIT (OHCI_INTR_MIE | OHCI_INTR_UE | OHCI_INTR_RD | \
- OHCI_INTR_WDH)
diff --git a/usb/usb-fix-omninet-memory-leak-found-by-coverity.patch b/usb/usb-fix-omninet-memory-leak-found-by-coverity.patch
deleted file mode 100644
index 08fea830cbe2d9..00000000000000
--- a/usb/usb-fix-omninet-memory-leak-found-by-coverity.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-From oneukum@suse.de Wed May 2 01:33:27 2007
-From: Oliver Neukum <oneukum@suse.de>
-Date: Wed, 2 May 2007 10:33:10 +0200
-Subject: USB: fix omninet memory leak found by coverity
-To: Eric Sesterhenn / Snakebyte <snakebyte@gmx.de>, linux-usb-devel@lists.sourceforge.net, "Greg Kroah-Hartman" <gregkh@suse.de>
-Message-ID: <200705021033.10521.oneukum@suse.de>
-Content-Disposition: inline
-
-
-the transfer of allocating the descriptor in attach and no longer in open
-was incomplete resulting in a memory leak coverity spotted. This fix
-is against the patch set you posted.
-
-Signed-off-by: Oliver Neukum <oneukum@suse.de>
-Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-
----
- drivers/usb/serial/omninet.c | 2 --
- 1 file changed, 2 deletions(-)
-
---- a/drivers/usb/serial/omninet.c
-+++ b/drivers/usb/serial/omninet.c
-@@ -165,12 +165,10 @@ static int omninet_open (struct usb_seri
- {
- struct usb_serial *serial = port->serial;
- struct usb_serial_port *wport;
-- struct omninet_data *od = usb_get_serial_port_data(port);
- int result = 0;
-
- dbg("%s - port %d", __FUNCTION__, port->number);
-
-- od = kmalloc( sizeof(struct omninet_data), GFP_KERNEL );
- wport = serial->port[1];
- wport->tty = port->tty;
-
diff --git a/usb/usb-fix-ratelimit-call-semantics.patch b/usb/usb-fix-ratelimit-call-semantics.patch
deleted file mode 100644
index 20f5fc6fb0e46e..00000000000000
--- a/usb/usb-fix-ratelimit-call-semantics.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-From stern@rowland.harvard.edu Tue May 22 09:21:28 2007
-From: Alan Stern <stern@rowland.harvard.edu>
-Date: Tue, 22 May 2007 11:48:17 -0400 (EDT)
-Subject: USB: fix ratelimit call semantics
-To: Greg KH <greg@kroah.com>
-Message-ID: <Pine.LNX.4.44L0.0705221146480.3391-100000@iolanthe.rowland.org>
-
-From: Alan Stern <stern@rowland.harvard.edu>
-
-This patch (as910) fixes a ratelimit modification so that the
-original error-handling path will be followed even when the log-rate
-limitation kicks in.
-
-Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
-Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-
----
- drivers/usb/core/hub.c | 8 ++++----
- 1 file changed, 4 insertions(+), 4 deletions(-)
-
---- a/drivers/usb/core/hub.c
-+++ b/drivers/usb/core/hub.c
-@@ -2421,10 +2421,10 @@ static void hub_port_connect_change(stru
-
- if (portchange & USB_PORT_STAT_C_CONNECTION) {
- status = hub_port_debounce(hub, port1);
-- if (status < 0 && printk_ratelimit()) {
-- dev_err (hub_dev,
-- "connect-debounce failed, port %d disabled\n",
-- port1);
-+ if (status < 0) {
-+ if (printk_ratelimit())
-+ dev_err (hub_dev, "connect-debounce failed, "
-+ "port %d disabled\n", port1);
- goto done;
- }
- portstatus = status;
diff --git a/usb/usb-fix-usb-ohci-subvendor-for-toshiba-portege-4000.patch b/usb/usb-fix-usb-ohci-subvendor-for-toshiba-portege-4000.patch
deleted file mode 100644
index f06d4e6ce8f844..00000000000000
--- a/usb/usb-fix-usb-ohci-subvendor-for-toshiba-portege-4000.patch
+++ /dev/null
@@ -1,42 +0,0 @@
-From david-b@pacbell.net Tue May 22 00:09:57 2007
-From: Andrey Borzenkov <arvidjaar@mail.ru>
-Subject: USB: Fix USB OHCI Subvendor for Toshiba Portege 4000
-Date: Sat, 19 May 2007 14:23:28 -0700
-To: Greg KH <greg@kroah.com>
-Cc: Andrey Borzenkov <arvidjaar@mail.ru>
-Message-ID: <200705191423.28454.david-b@pacbell.net>
-
-From: Andrey Borzenkov <arvidjaar@mail.ru>
-
-This fixes a bug in an OHCI quirk handler for Portege 4000; the
-Subvendor is 0x1179 (PCI_VENDOR_ID_TOSHIBA)
-not 0x102f (PCI_VENDOR_ID_TOSHIBA_2)
-
-bugid 8510
-
-00:02.0 USB Controller [0c03]: ALi Corporation USB 1.1 Controller
-[10b9:5237] (rev 03) (prog-if 10 [OHCI])
- Subsystem: Toshiba America Info Systems Unknown device [1179:0004]
- Flags: bus master, medium devsel, latency 64, IRQ 11
- Memory at f7eff000 (32-bit, non-prefetchable) [size=4K]
- Capabilities: <access denied>
-
-Signed-off-by: Andrey Borzenkov <arvidjaar@mail.ru>
-Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
-Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-
----
- drivers/usb/host/ohci-pci.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
---- a/drivers/usb/host/ohci-pci.c
-+++ b/drivers/usb/host/ohci-pci.c
-@@ -137,7 +137,7 @@ static const struct pci_device_id ohci_p
- /* Toshiba portege 4000 */
- .vendor = PCI_VENDOR_ID_AL,
- .device = 0x5237,
-- .subvendor = PCI_VENDOR_ID_TOSHIBA_2,
-+ .subvendor = PCI_VENDOR_ID_TOSHIBA,
- .subdevice = 0x0004,
- .driver_data = (unsigned long) broken_suspend,
- },
diff --git a/usb/usb-fsl_usb2_udc-fix-umti_wide-support-and-a-compile-warning.patch b/usb/usb-fsl_usb2_udc-fix-umti_wide-support-and-a-compile-warning.patch
deleted file mode 100644
index f2d3822948fa8f..00000000000000
--- a/usb/usb-fsl_usb2_udc-fix-umti_wide-support-and-a-compile-warning.patch
+++ /dev/null
@@ -1,49 +0,0 @@
-From leoli@freescale.com Fri Apr 27 23:06:06 2007
-From: Li Yang <leoli@freescale.com>
-Date: Sat, 28 Apr 2007 14:07:32 +0800
-Subject: USB: fsl_usb2_udc: Fix UMTI_WIDE support and a compile warning
-To: gregkh@suse.de
-Cc: <dbrownell@users.sourceforge.net>, linux-usb-devel@lists.sourceforge.net, <duck@freescale.com>
-Message-ID: <4632E4A4.5040305@freescale.com>
-
-
-Change PORT_WIDTH bit for UMTI_WIDE mode and fix a compile warning
-introduced in last revision.
-
-Signed-off-by: Li Yang <leoli@freescale.com>
-Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-
-
----
- drivers/usb/gadget/fsl_usb2_udc.c | 8 +++++---
- 1 file changed, 5 insertions(+), 3 deletions(-)
-
---- a/drivers/usb/gadget/fsl_usb2_udc.c
-+++ b/drivers/usb/gadget/fsl_usb2_udc.c
-@@ -228,13 +228,15 @@ static int dr_controller_setup(struct fs
-
- /* Config PHY interface */
- portctrl = fsl_readl(&dr_regs->portsc1);
-- portctrl &= ~PORTSCX_PHY_TYPE_SEL;
-+ portctrl &= ~(PORTSCX_PHY_TYPE_SEL & PORTSCX_PORT_WIDTH);
- switch (udc->phy_mode) {
- case FSL_USB2_PHY_ULPI:
- portctrl |= PORTSCX_PTS_ULPI;
- break;
-- case FSL_USB2_PHY_UTMI:
- case FSL_USB2_PHY_UTMI_WIDE:
-+ portctrl |= PORTSCX_PTW_16BIT;
-+ /* fall through */
-+ case FSL_USB2_PHY_UTMI:
- portctrl |= PORTSCX_PTS_UTMI;
- break;
- case FSL_USB2_PHY_SERIAL:
-@@ -625,7 +627,7 @@ static void fsl_free_buffer(struct usb_e
- struct fsl_ep *ep;
-
- if (!_ep)
-- return NULL;
-+ return;
-
- ep = container_of(_ep, struct fsl_ep, ep);
-
diff --git a/usb/usb-ftdi_sio-add-usb-product-id-for-opendcc.patch b/usb/usb-ftdi_sio-add-usb-product-id-for-opendcc.patch
deleted file mode 100644
index 96d2a7098470d7..00000000000000
--- a/usb/usb-ftdi_sio-add-usb-product-id-for-opendcc.patch
+++ /dev/null
@@ -1,44 +0,0 @@
-From guido.scholz@bayernline.de Tue May 8 10:52:56 2007
-From: Guido Scholz <guido.scholz@bayernline.de>
-Date: Tue, 8 May 2007 19:52:41 +0200
-Subject: USB: ftdi_sio: Add USB Product Id for OpenDCC
-To: Greg Kroah-Hartman <greg@kroah.com>
-Message-ID: <20070508175241.GA10666@traun.gscholz.bayernline.de>
-Content-Disposition: inline
-
-
-From: Guido Scholz <guido.scholz@bayernline.de>
-
-USB product id registration for the OpenDCC (www.opendcc.de)
-model railway central unit. Applies to 2.6.21.1.
-
-Signed-off-by: Guido Scholz <guido.scholz@bayernline.de>
-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
-@@ -319,6 +319,7 @@ static struct usb_device_id id_table_com
- { USB_DEVICE(FTDI_VID, FTDI_8U2232C_PID) },
- { USB_DEVICE(FTDI_VID, FTDI_MICRO_CHAMELEON_PID) },
- { USB_DEVICE(FTDI_VID, FTDI_RELAIS_PID) },
-+ { USB_DEVICE(FTDI_VID, FTDI_OPENDCC_PID) },
- { USB_DEVICE(INTERBIOMETRICS_VID, INTERBIOMETRICS_IOBOARD_PID) },
- { USB_DEVICE(INTERBIOMETRICS_VID, INTERBIOMETRICS_MINI_IOBOARD_PID) },
- { USB_DEVICE(FTDI_VID, FTDI_XF_632_PID) },
---- a/drivers/usb/serial/ftdi_sio.h
-+++ b/drivers/usb/serial/ftdi_sio.h
-@@ -60,6 +60,9 @@
- /* DMX4ALL DMX Interfaces */
- #define FTDI_DMX4ALL 0xC850
-
-+/* OpenDCC (www.opendcc.de) product id */
-+#define FTDI_OPENDCC_PID 0xBFD8
-+
- /* www.crystalfontz.com devices - thanx for providing free devices for evaluation ! */
- /* they use the ftdi chipset for the USB interface and the vendor id is the same */
- #define FTDI_XF_632_PID 0xFC08 /* 632: 16x2 Character Display */
diff --git a/usb/usb-handle-errors-in-power-level-attribute.patch b/usb/usb-handle-errors-in-power-level-attribute.patch
deleted file mode 100644
index 0712e2bf887b01..00000000000000
--- a/usb/usb-handle-errors-in-power-level-attribute.patch
+++ /dev/null
@@ -1,49 +0,0 @@
-From stern@rowland.harvard.edu Tue May 22 09:20:39 2007
-From: Alan Stern <stern@rowland.harvard.edu>
-Date: Tue, 22 May 2007 11:38:19 -0400 (EDT)
-Subject: USB: handle errors in power/level attribute
-To: Greg KH <greg@kroah.com>
-Message-ID: <Pine.LNX.4.44L0.0705221136460.3391-100000@iolanthe.rowland.org>
-
-From: Alan Stern <stern@rowland.harvard.edu>
-
-This patch (as906) improves the error handling for the USB power/level
-attribute file. If an error occurs, the original power-level settings
-will be restored.
-
-Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
-Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-
----
- drivers/usb/core/sysfs.c | 7 +++++++
- 1 file changed, 7 insertions(+)
-
---- a/drivers/usb/core/sysfs.c
-+++ b/drivers/usb/core/sysfs.c
-@@ -232,12 +232,15 @@ set_level(struct device *dev, struct dev
- int len = count;
- char *cp;
- int rc = 0;
-+ int old_autosuspend_disabled, old_autoresume_disabled;
-
- cp = memchr(buf, '\n', count);
- if (cp)
- len = cp - buf;
-
- usb_lock_device(udev);
-+ old_autosuspend_disabled = udev->autosuspend_disabled;
-+ old_autoresume_disabled = udev->autoresume_disabled;
-
- /* Setting the flags without calling usb_pm_lock is a subject to
- * races, but who cares...
-@@ -263,6 +266,10 @@ set_level(struct device *dev, struct dev
- } else
- rc = -EINVAL;
-
-+ if (rc) {
-+ udev->autosuspend_disabled = old_autosuspend_disabled;
-+ udev->autoresume_disabled = old_autoresume_disabled;
-+ }
- usb_unlock_device(udev);
- return (rc < 0 ? rc : count);
- }
diff --git a/usb/usb-handle-more-rndis_host-oddities.patch b/usb/usb-handle-more-rndis_host-oddities.patch
deleted file mode 100644
index eb128e90081737..00000000000000
--- a/usb/usb-handle-more-rndis_host-oddities.patch
+++ /dev/null
@@ -1,59 +0,0 @@
-From david-b@pacbell.net Sun Apr 29 11:48:23 2007
-From: David Brownell <david-b@pacbell.net>
-Date: Sun, 29 Apr 2007 10:09:47 -0700
-Subject: USB: handle more rndis_host oddities
-To: Greg KH <greg@kroah.com>
-Cc: linux-usb-devel@lists.sourceforge.net
-Message-ID: <200704291009.48162.david-b@pacbell.net>
-Content-Disposition: inline
-
-
-Workaround another device firmware bug, wherein CDC descriptors get
-placed in a wrong place never previously observed in the wild.
-
-Fix a bug where a seeming RNDIS device returns a bogus response during
-device initialization.
-
-Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
-Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-
----
- drivers/net/usb/cdc_ether.c | 16 ++++++++++++++++
- drivers/net/usb/rndis_host.c | 1 +
- 2 files changed, 17 insertions(+)
-
---- a/drivers/net/usb/cdc_ether.c
-+++ b/drivers/net/usb/cdc_ether.c
-@@ -91,6 +91,22 @@ int usbnet_generic_cdc_bind(struct usbne
- "CDC descriptors on config\n");
- }
-
-+ /* Maybe CDC descriptors are after the endpoint? This bug has
-+ * been seen on some 2Wire Inc RNDIS-ish products.
-+ */
-+ if (len == 0) {
-+ struct usb_host_endpoint *hep;
-+
-+ hep = intf->cur_altsetting->endpoint;
-+ if (hep) {
-+ buf = hep->extra;
-+ len = hep->extralen;
-+ }
-+ if (len)
-+ dev_dbg(&intf->dev,
-+ "CDC descriptors on endpoint\n");
-+ }
-+
- /* this assumes that if there's a non-RNDIS vendor variant
- * of cdc-acm, it'll fail RNDIS requests cleanly.
- */
---- a/drivers/net/usb/rndis_host.c
-+++ b/drivers/net/usb/rndis_host.c
-@@ -515,6 +515,7 @@ static int rndis_bind(struct usbnet *dev
- dev_err(&intf->dev,
- "dev can't take %u byte packets (max %u)\n",
- dev->hard_mtu, tmp);
-+ retval = -EINVAL;
- goto fail_and_release;
- }
-
diff --git a/usb/usb-ldusb-bugfix.patch b/usb/usb-ldusb-bugfix.patch
deleted file mode 100644
index c47151297254a3..00000000000000
--- a/usb/usb-ldusb-bugfix.patch
+++ /dev/null
@@ -1,136 +0,0 @@
-From oneukum@suse.de Fri May 4 00:23:49 2007
-From: Oliver Neukum <oneukum@suse.de>
-Date: Fri, 4 May 2007 09:23:40 +0200
-Subject: USB: ldusb bugfix
-To: Greg KH <greg@kroah.com>
-Cc: Alan Stern <stern@rowland.harvard.edu>, David Brownell <david-b@pacbell.net>, linux-usb-devel@lists.sourceforge.net
-Message-ID: <200705040923.40388.oneukum@suse.de>
-Content-Disposition: inline
-
-
-This patch fixes a problem reported with consecutive reads in the ldusb
-driver.
-
-Signed-off-by: Oliver Neukum <oneukum@suse.de>
-Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-
----
- drivers/usb/misc/ldusb.c | 35 +++++++++++++++++++++++++++++++----
- 1 file changed, 31 insertions(+), 4 deletions(-)
-
---- a/drivers/usb/misc/ldusb.c
-+++ b/drivers/usb/misc/ldusb.c
-@@ -165,6 +165,8 @@ struct ld_usb {
- size_t interrupt_in_endpoint_size;
- int interrupt_in_running;
- int interrupt_in_done;
-+ int buffer_overflow;
-+ spinlock_t rbsl;
-
- char* interrupt_out_buffer;
- struct usb_endpoint_descriptor* interrupt_out_endpoint;
-@@ -230,10 +232,12 @@ static void ld_usb_interrupt_in_callback
- } else {
- dbg_info(&dev->intf->dev, "%s: nonzero status received: %d\n",
- __FUNCTION__, urb->status);
-+ spin_lock(&dev->rbsl);
- goto resubmit; /* maybe we can recover */
- }
- }
-
-+ spin_lock(&dev->rbsl);
- if (urb->actual_length > 0) {
- next_ring_head = (dev->ring_head+1) % ring_buffer_size;
- if (next_ring_head != dev->ring_tail) {
-@@ -244,21 +248,25 @@ static void ld_usb_interrupt_in_callback
- dev->ring_head = next_ring_head;
- dbg_info(&dev->intf->dev, "%s: received %d bytes\n",
- __FUNCTION__, urb->actual_length);
-- } else
-+ } else {
- dev_warn(&dev->intf->dev,
- "Ring buffer overflow, %d bytes dropped\n",
- urb->actual_length);
-+ dev->buffer_overflow = 1;
-+ }
- }
-
- resubmit:
- /* resubmit if we're still running */
-- if (dev->interrupt_in_running && dev->intf) {
-+ if (dev->interrupt_in_running && !dev->buffer_overflow && dev->intf) {
- retval = usb_submit_urb(dev->interrupt_in_urb, GFP_ATOMIC);
-- if (retval)
-+ if (retval) {
- dev_err(&dev->intf->dev,
- "usb_submit_urb failed (%d)\n", retval);
-+ dev->buffer_overflow = 1;
-+ }
- }
--
-+ spin_unlock(&dev->rbsl);
- exit:
- dev->interrupt_in_done = 1;
- wake_up_interruptible(&dev->read_wait);
-@@ -330,6 +338,7 @@ static int ld_usb_open(struct inode *ino
- /* initialize in direction */
- dev->ring_head = 0;
- dev->ring_tail = 0;
-+ dev->buffer_overflow = 0;
- usb_fill_int_urb(dev->interrupt_in_urb,
- interface_to_usbdev(interface),
- usb_rcvintpipe(interface_to_usbdev(interface),
-@@ -439,6 +448,7 @@ static ssize_t ld_usb_read(struct file *
- size_t *actual_buffer;
- size_t bytes_to_read;
- int retval = 0;
-+ int rv;
-
- dev = file->private_data;
-
-@@ -460,7 +470,10 @@ static ssize_t ld_usb_read(struct file *
- }
-
- /* wait for data */
-+ spin_lock_irq(&dev->rbsl);
- if (dev->ring_head == dev->ring_tail) {
-+ dev->interrupt_in_done = 0;
-+ spin_unlock_irq(&dev->rbsl);
- if (file->f_flags & O_NONBLOCK) {
- retval = -EAGAIN;
- goto unlock_exit;
-@@ -468,6 +481,8 @@ static ssize_t ld_usb_read(struct file *
- retval = wait_event_interruptible(dev->read_wait, dev->interrupt_in_done);
- if (retval < 0)
- goto unlock_exit;
-+ } else {
-+ spin_unlock_irq(&dev->rbsl);
- }
-
- /* actual_buffer contains actual_length + interrupt_in_buffer */
-@@ -486,6 +501,17 @@ static ssize_t ld_usb_read(struct file *
-
- retval = bytes_to_read;
-
-+ spin_lock_irq(&dev->rbsl);
-+ if (dev->buffer_overflow) {
-+ dev->buffer_overflow = 0;
-+ spin_unlock_irq(&dev->rbsl);
-+ rv = usb_submit_urb(dev->interrupt_in_urb, GFP_KERNEL);
-+ if (rv < 0)
-+ dev->buffer_overflow = 1;
-+ } else {
-+ spin_unlock_irq(&dev->rbsl);
-+ }
-+
- unlock_exit:
- /* unlock the device */
- up(&dev->sem);
-@@ -635,6 +661,7 @@ static int ld_usb_probe(struct usb_inter
- goto exit;
- }
- init_MUTEX(&dev->sem);
-+ spin_lock_init(&dev->rbsl);
- dev->intf = intf;
- init_waitqueue_head(&dev->read_wait);
- init_waitqueue_head(&dev->write_wait);
diff --git a/usb/usb-make-the-autosuspend-workqueue-thread-freezable.patch b/usb/usb-make-the-autosuspend-workqueue-thread-freezable.patch
deleted file mode 100644
index f7fab8270ed438..00000000000000
--- a/usb/usb-make-the-autosuspend-workqueue-thread-freezable.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-From stern@rowland.harvard.edu Tue May 22 09:19:44 2007
-From: Alan Stern <stern@rowland.harvard.edu>
-Date: Tue, 22 May 2007 09:38:39 -0400 (EDT)
-Subject: USB: make the autosuspend workqueue thread freezable
-To: Greg KH <greg@kroah.com>
-Message-ID: <Pine.LNX.4.44L0.0705220935310.3317-100000@iolanthe.rowland.org>
-
-From: Alan Stern <stern@rowland.harvard.edu>
-
-This patch (as881b) makes the ksuspend_usb_wq workqueue freezable. We
-don't want a rogue workqueue thread running around, unexpectedly
-suspending or resuming USB devices in the middle of a system sleep
-transition.
-
-This fixes Bugzilla #8498.
-
-Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
-Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-
----
- drivers/usb/core/usb.c | 6 +++++-
- 1 file changed, 5 insertions(+), 1 deletion(-)
-
---- a/drivers/usb/core/usb.c
-+++ b/drivers/usb/core/usb.c
-@@ -205,7 +205,11 @@ struct device_type usb_device_type = {
-
- static int ksuspend_usb_init(void)
- {
-- ksuspend_usb_wq = create_singlethread_workqueue("ksuspend_usbd");
-+ /* This workqueue is supposed to be both freezable and
-+ * singlethreaded. Its job doesn't justify running on more
-+ * than one CPU.
-+ */
-+ ksuspend_usb_wq = create_freezeable_workqueue("ksuspend_usbd");
- if (!ksuspend_usb_wq)
- return -ENOMEM;
- return 0;
diff --git a/usb/usb-more-autosuspend-timer-stuff.patch b/usb/usb-more-autosuspend-timer-stuff.patch
deleted file mode 100644
index 9f9665dc3f1bd7..00000000000000
--- a/usb/usb-more-autosuspend-timer-stuff.patch
+++ /dev/null
@@ -1,76 +0,0 @@
-From stern@rowland.harvard.edu Thu Apr 5 13:03:59 2007
-From: Alan Stern <stern@rowland.harvard.edu>
-Date: Thu, 5 Apr 2007 16:03:49 -0400 (EDT)
-Subject: [PATCH 2/11] USB: more autosuspend timer stuff
-To: Greg KH <greg@kroah.com>
-Cc: USB development list <linux-usb-devel@lists.sourceforge.net>
-Message-ID: <Pine.LNX.4.44L0.0704051602170.2495-100000@iolanthe.rowland.org>
-
-
-This patch (as879) ties up some loose ends from an earlier patch.
-These are things I didn't think to include at the time but which
-clearly belonged there.
-
- If an autosuspend fails because driver activity races with
- the autosuspend call, restart the autosuspend timer.
-
- When a device is resumed by an external request, it counts
- as device activity and should update the last_busy time so
- that the next autoresume won't occur immediately.
-
-Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
-Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-
----
- drivers/usb/core/driver.c | 18 ++++++++++++++----
- 1 file changed, 14 insertions(+), 4 deletions(-)
-
---- a/drivers/usb/core/driver.c
-+++ b/drivers/usb/core/driver.c
-@@ -983,7 +983,10 @@ static int autosuspend_check(struct usb_
-
- #else
-
--#define autosuspend_check(udev) 0
-+static inline int autosuspend_check(struct usb_device *udev)
-+{
-+ return 0;
-+}
-
- #endif /* CONFIG_USB_SUSPEND */
-
-@@ -1041,7 +1044,6 @@ static int usb_suspend_both(struct usb_d
- if (status < 0)
- goto done;
- }
-- cancel_delayed_work(&udev->autosuspend);
-
- /* Suspend all the interfaces and then udev itself */
- if (udev->actconfig) {
-@@ -1062,9 +1064,16 @@ static int usb_suspend_both(struct usb_d
- usb_resume_interface(intf);
- }
-
-+ /* Try another autosuspend when the interfaces aren't busy */
-+ if (udev->auto_pm)
-+ autosuspend_check(udev);
-+
- /* If the suspend succeeded, propagate it up the tree */
-- } else if (parent)
-- usb_autosuspend_device(parent);
-+ } else {
-+ cancel_delayed_work(&udev->autosuspend);
-+ if (parent)
-+ usb_autosuspend_device(parent);
-+ }
-
- done:
- // dev_dbg(&udev->dev, "%s: status %d\n", __FUNCTION__, status);
-@@ -1475,6 +1484,7 @@ int usb_external_resume_device(struct us
- usb_pm_lock(udev);
- udev->auto_pm = 0;
- status = usb_resume_both(udev);
-+ udev->last_busy = jiffies;
- usb_pm_unlock(udev);
-
- /* Now that the device is awake, we can start trying to autosuspend
diff --git a/usb/usb-new-device-pid-for-ftdi_sio-driver.patch b/usb/usb-new-device-pid-for-ftdi_sio-driver.patch
deleted file mode 100644
index bd48662da00e79..00000000000000
--- a/usb/usb-new-device-pid-for-ftdi_sio-driver.patch
+++ /dev/null
@@ -1,48 +0,0 @@
-From linux-usb-devel-bounces@lists.sourceforge.net Wed Apr 25 11:34:49 2007
-From: "Neil \"Superna\" ARMSTRONG" <superna@na-prod.com>
-Date: Wed, 25 Apr 2007 20:34:28 +0200
-Subject: USB: New device PID for ftdi_sio driver
-To: linux-usb-devel@lists.sourceforge.net
-Message-ID: <462F9F34.4090608@na-prod.com>
-
-
-Hello,
-
-I need to use MaxStream's PKG-U modules which includes a ftdi sio chipset for
-usb2serial communication, here are the patches for handling Maxstream's modules.
-
-The VID & PID to use with the open-source driver are provided on the CD-ROM
-bundled with the modules.
-
-From: Neil Superna ARMSTRONG <superna@na-prod.com>
-Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-
----
- drivers/usb/serial/ftdi_sio.c | 1 +
- drivers/usb/serial/ftdi_sio.h | 5 +++++
- 2 files changed, 6 insertions(+)
-
---- a/drivers/usb/serial/ftdi_sio.c
-+++ b/drivers/usb/serial/ftdi_sio.c
-@@ -525,6 +525,7 @@ static struct usb_device_id id_table_com
- { USB_DEVICE(FTDI_VID, FTDI_TACTRIX_OPENPORT_13U_PID) },
- { USB_DEVICE(ELEKTOR_VID, ELEKTOR_FT323R_PID) },
- { USB_DEVICE(TELLDUS_VID, TELLDUS_TELLSTICK_PID) },
-+ { USB_DEVICE(FTDI_VID, FTDI_MAXSTREAM_PID) },
- { }, /* Optional parameter entry */
- { } /* Terminating entry */
- };
---- a/drivers/usb/serial/ftdi_sio.h
-+++ b/drivers/usb/serial/ftdi_sio.h
-@@ -518,6 +518,11 @@
- #define FTDI_IBS_PEDO_PID 0xff3e /* IBS PEDO-Modem (RF modem 868.35 MHz) */
- #define FTDI_IBS_PROD_PID 0xff3f /* future device */
-
-+/*
-+ * MaxStream devices www.maxstream.net
-+ */
-+#define FTDI_MAXSTREAM_PID 0xEE18 /* Xbee PKG-U Module */
-+
- /* Commands */
- #define FTDI_SIO_RESET 0 /* Reset the port */
- #define FTDI_SIO_MODEM_CTRL 1 /* Set the modem control register */
diff --git a/usb/usb-onetouch-switch-to-using-input_dev-dev.parent.patch b/usb/usb-onetouch-switch-to-using-input_dev-dev.parent.patch
deleted file mode 100644
index bb6a5323a29f12..00000000000000
--- a/usb/usb-onetouch-switch-to-using-input_dev-dev.parent.patch
+++ /dev/null
@@ -1,60 +0,0 @@
-From dtor@insightbb.com Mon May 7 21:31:38 2007
-From: Dmitry Torokhov <dtor@insightbb.com>
-To: Greg KH <gregkh@suse.de>, Matthew Dharm <mdharm-usb@one-eyed-alien.net>
-Subject: USB: Onetouch - switch to using input_dev->dev.parent
-Date: Tue, 8 May 2007 00:31:30 -0400
-Cc: linux-usb-devel@lists.sourceforge.net
-Content-Disposition: inline
-Message-Id: <200705080031.30954.dtor@insightbb.com>
-
-In preparation for struct class_device -> struct device input
-core conversion, switch to using input_dev->dev.parent when
-specifying device position in sysfs tree.
-
-Also, do not access input_dev->private directly, use helpers.
-
-Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
-Signed-off-by: Matthew Dharm <mdharm-usb@one-eyed-alien.net>
-Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-
----
- drivers/usb/storage/onetouch.c | 9 +++++----
- 1 file changed, 5 insertions(+), 4 deletions(-)
-
---- a/drivers/usb/storage/onetouch.c
-+++ b/drivers/usb/storage/onetouch.c
-@@ -84,7 +84,7 @@ resubmit:
-
- static int usb_onetouch_open(struct input_dev *dev)
- {
-- struct usb_onetouch *onetouch = dev->private;
-+ struct usb_onetouch *onetouch = input_get_drvdata(dev);
-
- onetouch->is_open = 1;
- onetouch->irq->dev = onetouch->udev;
-@@ -98,7 +98,7 @@ static int usb_onetouch_open(struct inpu
-
- static void usb_onetouch_close(struct input_dev *dev)
- {
-- struct usb_onetouch *onetouch = dev->private;
-+ struct usb_onetouch *onetouch = input_get_drvdata(dev);
-
- usb_kill_urb(onetouch->irq);
- onetouch->is_open = 0;
-@@ -185,13 +185,14 @@ int onetouch_connect_input(struct us_dat
- input_dev->name = onetouch->name;
- input_dev->phys = onetouch->phys;
- usb_to_input_id(udev, &input_dev->id);
-- input_dev->cdev.dev = &udev->dev;
-+ input_dev->dev.parent = &udev->dev;
-
- set_bit(EV_KEY, input_dev->evbit);
- set_bit(ONETOUCH_BUTTON, input_dev->keybit);
- clear_bit(0, input_dev->keybit);
-
-- input_dev->private = onetouch;
-+ input_set_drvdata(input_dev, onetouch);
-+
- input_dev->open = usb_onetouch_open;
- input_dev->close = usb_onetouch_close;
-
diff --git a/usb/usb-remove-duplicate-ids-from-option-card-driver.patch b/usb/usb-remove-duplicate-ids-from-option-card-driver.patch
deleted file mode 100644
index ff2b71899e581f..00000000000000
--- a/usb/usb-remove-duplicate-ids-from-option-card-driver.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-From linux-usb-devel-bounces@lists.sourceforge.net Wed May 16 13:50:21 2007
-From: Ben Collins <ben.collins@ubuntu.com>
-To: linux-kernel@vger.kernel.org
-Date: Wed, 16 May 2007 16:49:54 -0400
-Message-Id: <1179348594.6510.13.camel@cunning>
-Cc: Linus Torvalds <torvalds@osdl.org>,
- linux-usb-devel@lists.sourceforge.net
-Subject: USB: Remove duplicate IDs from option card driver
-
-
-Cc: Matthias Urlichs <smurf@smurf.noris.de>
-Signed-off-by: Ben Collins <bcollins@ubuntu.com>
-Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-
----
- drivers/usb/serial/option.c | 1 -
- 1 file changed, 1 deletion(-)
-
---- a/drivers/usb/serial/option.c
-+++ b/drivers/usb/serial/option.c
-@@ -165,7 +165,6 @@ static struct usb_device_id option_ids[]
- { USB_DEVICE(NOVATELWIRELESS_VENDOR_ID, 0x1410) }, /* Novatel U740 */
- { USB_DEVICE(NOVATELWIRELESS_VENDOR_ID, 0x1420) }, /* Novatel EU870 */
- { USB_DEVICE(NOVATELWIRELESS_VENDOR_ID, 0x1430) }, /* Novatel Merlin XU870 HSDPA/3G */
-- { USB_DEVICE(NOVATELWIRELESS_VENDOR_ID, 0x1430) }, /* Novatel XU870 */
- { USB_DEVICE(NOVATELWIRELESS_VENDOR_ID, 0x2100) }, /* Novatel EV620 CDMA/EV-DO */
- { USB_DEVICE(NOVATELWIRELESS_VENDOR_ID, 0x2110) }, /* Novatel Merlin ES620 / Merlin ES720 / Ovation U720 */
- { USB_DEVICE(NOVATELWIRELESS_VENDOR_ID, 0x2130) }, /* Novatel Merlin ES620 SM Bus */
diff --git a/usb/usb-remove-short-initial-timeout-for-device-descriptor-fetch.patch b/usb/usb-remove-short-initial-timeout-for-device-descriptor-fetch.patch
deleted file mode 100644
index 876b54b7404c6c..00000000000000
--- a/usb/usb-remove-short-initial-timeout-for-device-descriptor-fetch.patch
+++ /dev/null
@@ -1,55 +0,0 @@
-From stern@rowland.harvard.edu Fri May 11 07:19:08 2007
-Date: Fri, 11 May 2007 10:19:04 -0400 (EDT)
-From: Alan Stern <stern@rowland.harvard.edu>
-To: Greg KH <greg@kroah.com>
-cc: mrb74@gmx.at, USB development list <linux-usb-devel@lists.sourceforge.net>
-Subject: USB: remove short initial timeout for device descriptor fetch
-Message-ID: <Pine.LNX.4.44L0.0705111017300.2825-100000@iolanthe.rowland.org>
-
-This patch (as905) removes a micro-optimization from the hub port
-initialization code. Previously we had been using a short timeout on
-the first attempt the read the device descriptor; now we will use the
-standard timeout length.
-
-It's not clear that the short timeout ever provided any benefit. And
-now we know of one case where it actually hurts: The device can't meet
-the short timeout and then it gets terminally confused.
-
-This fixes Bugzilla #8444.
-
-Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
-Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-
----
- drivers/usb/core/hub.c | 13 ++++---------
- 1 file changed, 4 insertions(+), 9 deletions(-)
-
---- a/drivers/usb/core/hub.c
-+++ b/drivers/usb/core/hub.c
-@@ -2201,14 +2201,9 @@ hub_port_init (struct usb_hub *hub, stru
- continue;
- }
-
-- /* Use a short timeout the first time through,
-- * so that recalcitrant full-speed devices with
-- * 8- or 16-byte ep0-maxpackets won't slow things
-- * down tremendously by NAKing the unexpectedly
-- * early status stage. Also, retry on all errors;
-- * some devices are flakey.
-- * 255 is for WUSB devices, we actually need to use 512.
-- * WUSB1.0[4.8.1].
-+ /* Retry on all errors; some devices are flakey.
-+ * 255 is for WUSB devices, we actually need to use
-+ * 512 (WUSB1.0[4.8.1]).
- */
- for (j = 0; j < 3; ++j) {
- buf->bMaxPacketSize0 = 0;
-@@ -2216,7 +2211,7 @@ hub_port_init (struct usb_hub *hub, stru
- USB_REQ_GET_DESCRIPTOR, USB_DIR_IN,
- USB_DT_DEVICE << 8, 0,
- buf, GET_DESCRIPTOR_BUFSIZE,
-- (i ? USB_CTRL_GET_TIMEOUT : 1000));
-+ USB_CTRL_GET_TIMEOUT);
- switch (buf->bMaxPacketSize0) {
- case 8: case 16: case 32: case 64: case 255:
- if (buf->bDescriptorType ==
diff --git a/usb/usb-remove-unneeded-warn_on.patch b/usb/usb-remove-unneeded-warn_on.patch
deleted file mode 100644
index 86efd3f449fc2a..00000000000000
--- a/usb/usb-remove-unneeded-warn_on.patch
+++ /dev/null
@@ -1,39 +0,0 @@
-From stern@rowland.harvard.edu Thu Apr 5 13:07:54 2007
-From: Alan Stern <stern@rowland.harvard.edu>
-Date: Thu, 5 Apr 2007 16:07:44 -0400 (EDT)
-Subject: USB: remove unneeded WARN_ON
-To: Greg KH <greg@kroah.com>, David Brownell <david-b@pacbell.net>
-Cc: USB development list <linux-usb-devel@lists.sourceforge.net>
-Message-ID: <Pine.LNX.4.44L0.0704051606540.2495-100000@iolanthe.rowland.org>
-
-
-This patch (as883) removes an out-of-date WARN_ON from the main HCD
-endpoint-disable routine. The warning is triggered whenever an
-endpoint is disabled while the root hub is suspended. In the past
-that may not have been legal, but it definitely is legal now. Merely
-unbinding a USB driver will do it.
-
-Furthermore, I've never seen any occurrences of this warning that
-really did signal an actual bug or error condition. At this point it
-has outlived its purpose.
-
-Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
-Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
-
----
- drivers/usb/core/hcd.c | 4 ----
- 1 file changed, 4 deletions(-)
-
---- a/drivers/usb/core/hcd.c
-+++ b/drivers/usb/core/hcd.c
-@@ -1175,10 +1175,6 @@ void usb_hcd_endpoint_disable (struct us
- struct urb *urb;
-
- hcd = bus_to_hcd(udev->bus);
--
-- WARN_ON (!HC_IS_RUNNING (hcd->state) && hcd->state != HC_STATE_HALT &&
-- udev->state != USB_STATE_NOTATTACHED);
--
- local_irq_disable ();
-
- /* ep is already gone from udev->ep_{in,out}[]; no more submits */
diff --git a/usb/usb-remove-usb-docbook-warnings.patch b/usb/usb-remove-usb-docbook-warnings.patch
deleted file mode 100644
index 65c492d2cf3d18..00000000000000
--- a/usb/usb-remove-usb-docbook-warnings.patch
+++ /dev/null
@@ -1,162 +0,0 @@
-From david-b@pacbell.net Sun Apr 29 19:54:49 2007
-From: David Brownell <david-b@pacbell.net>
-Date: Sun, 29 Apr 2007 19:51:05 -0700
-Subject: USB: remove usb DocBook warnings
-To: Greg KH <greg@kroah.com>
-Cc: linux-usb-devel@lists.sourceforge.net
-Message-ID: <200704291951.05682.david-b@pacbell.net>
-Content-Disposition: inline
-
-
-This just removes some warnings generated by the Docbook tools when
-turning USB (host and peripheral side) kerneldoc into HTML; they're
-all about missing ID attributes.
-
-Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
-Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-
-
----
- Documentation/DocBook/gadget.tmpl | 2 +-
- Documentation/DocBook/usb.tmpl | 28 ++++++++++++++--------------
- 2 files changed, 15 insertions(+), 15 deletions(-)
-
---- a/Documentation/DocBook/gadget.tmpl
-+++ b/Documentation/DocBook/gadget.tmpl
-@@ -52,7 +52,7 @@
-
- <toc></toc>
-
--<chapter><title>Introduction</title>
-+<chapter id="intro"><title>Introduction</title>
-
- <para>This document presents a Linux-USB "Gadget"
- kernel mode
---- a/Documentation/DocBook/usb.tmpl
-+++ b/Documentation/DocBook/usb.tmpl
-@@ -185,7 +185,7 @@
-
- </chapter>
-
--<chapter><title>USB-Standard Types</title>
-+<chapter id="types"><title>USB-Standard Types</title>
-
- <para>In <filename>&lt;linux/usb/ch9.h&gt;</filename> you will find
- the USB data types defined in chapter 9 of the USB specification.
-@@ -197,7 +197,7 @@
-
- </chapter>
-
--<chapter><title>Host-Side Data Types and Macros</title>
-+<chapter id="hostside"><title>Host-Side Data Types and Macros</title>
-
- <para>The host side API exposes several layers to drivers, some of
- which are more necessary than others.
-@@ -211,7 +211,7 @@
-
- </chapter>
-
-- <chapter><title>USB Core APIs</title>
-+ <chapter id="usbcore"><title>USB Core APIs</title>
-
- <para>There are two basic I/O models in the USB API.
- The most elemental one is asynchronous: drivers submit requests
-@@ -248,7 +248,7 @@
- !Edrivers/usb/core/hub.c
- </chapter>
-
-- <chapter><title>Host Controller APIs</title>
-+ <chapter id="hcd"><title>Host Controller APIs</title>
-
- <para>These APIs are only for use by host controller drivers,
- most of which implement standard register interfaces such as
-@@ -285,7 +285,7 @@
- !Idrivers/usb/core/buffer.c
- </chapter>
-
-- <chapter>
-+ <chapter id="usbfs">
- <title>The USB Filesystem (usbfs)</title>
-
- <para>This chapter presents the Linux <emphasis>usbfs</emphasis>.
-@@ -317,7 +317,7 @@
- not it has a kernel driver.
- </para>
-
-- <sect1>
-+ <sect1 id="usbfs-files">
- <title>What files are in "usbfs"?</title>
-
- <para>Conventionally mounted at
-@@ -356,7 +356,7 @@
-
- </sect1>
-
-- <sect1>
-+ <sect1 id="usbfs-fstab">
- <title>Mounting and Access Control</title>
-
- <para>There are a number of mount options for usbfs, which will
-@@ -439,7 +439,7 @@
-
- </sect1>
-
-- <sect1>
-+ <sect1 id="usbfs-devices">
- <title>/proc/bus/usb/devices</title>
-
- <para>This file is handy for status viewing tools in user
-@@ -473,7 +473,7 @@ for (;;) {
- </para>
- </sect1>
-
-- <sect1>
-+ <sect1 id="usbfs-bbbddd">
- <title>/proc/bus/usb/BBB/DDD</title>
-
- <para>Use these files in one of these basic ways:
-@@ -510,7 +510,7 @@ for (;;) {
- </sect1>
-
-
-- <sect1>
-+ <sect1 id="usbfs-lifecycle">
- <title>Life Cycle of User Mode Drivers</title>
-
- <para>Such a driver first needs to find a device file
-@@ -565,7 +565,7 @@ for (;;) {
-
- </sect1>
-
-- <sect1><title>The ioctl() Requests</title>
-+ <sect1 id="usbfs-ioctl"><title>The ioctl() Requests</title>
-
- <para>To use these ioctls, you need to include the following
- headers in your userspace program:
-@@ -604,7 +604,7 @@ for (;;) {
- </para>
-
-
-- <sect2>
-+ <sect2 id="usbfs-mgmt">
- <title>Management/Status Requests</title>
-
- <para>A number of usbfs requests don't deal very directly
-@@ -736,7 +736,7 @@ usbdev_ioctl (int fd, int ifno, unsigned
-
- </sect2>
-
-- <sect2>
-+ <sect2 id="usbfs-sync">
- <title>Synchronous I/O Support</title>
-
- <para>Synchronous requests involve the kernel blocking
-@@ -865,7 +865,7 @@ usbdev_ioctl (int fd, int ifno, unsigned
- </variablelist>
- </sect2>
-
-- <sect2>
-+ <sect2 id="usbfs-async">
- <title>Asynchronous I/O Support</title>
-
- <para>As mentioned above, there are situations where it may be
diff --git a/usb/usb-remove-useless-check-in-mos7840-found-by-coverity.patch b/usb/usb-remove-useless-check-in-mos7840-found-by-coverity.patch
deleted file mode 100644
index a747af6a6e4ff7..00000000000000
--- a/usb/usb-remove-useless-check-in-mos7840-found-by-coverity.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From oneukum@suse.de Wed May 2 01:18:04 2007
-From: Oliver Neukum <oneukum@suse.de>
-Date: Wed, 2 May 2007 10:17:50 +0200
-Subject: USB: remove useless check in mos7840 found by coverity
-To: Eric Sesterhenn / Snakebyte <snakebyte@gmx.de>, linux-usb-devel@lists.sourceforge.net, "Greg Kroah-Hartman" <gregkh@suse.de>
-Message-ID: <200705021017.51277.oneukum@suse.de>
-Content-Disposition: inline
-
-
-this useless check should be removed.
-
-Signed-off-by: Oliver Neukum <oneukum@suse.de>
-Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-
----
- drivers/usb/serial/mos7840.c | 5 -----
- 1 file changed, 5 deletions(-)
-
---- a/drivers/usb/serial/mos7840.c
-+++ b/drivers/usb/serial/mos7840.c
-@@ -769,11 +769,6 @@ static void mos7840_bulk_out_data_callba
- return;
- }
-
-- if (!mos7840_port) {
-- dbg("%s", "NULL mos7840_port pointer \n");
-- return;
-- }
--
- if (mos7840_port_paranoia_check(mos7840_port->port, __FUNCTION__)) {
- dbg("%s", "Port Paranoia failed \n");
- return;
diff --git a/usb/usb-set-the-correct-interrupt-interval-in-usb_bulk_msg.patch b/usb/usb-set-the-correct-interrupt-interval-in-usb_bulk_msg.patch
deleted file mode 100644
index d6b95c7c2b4b46..00000000000000
--- a/usb/usb-set-the-correct-interrupt-interval-in-usb_bulk_msg.patch
+++ /dev/null
@@ -1,39 +0,0 @@
-From stern@rowland.harvard.edu Mon Apr 23 14:30:35 2007
-From: Alan Stern <stern@rowland.harvard.edu>
-Date: Mon, 23 Apr 2007 17:30:32 -0400 (EDT)
-Subject: USB: set the correct Interrupt interval in usb_bulk_msg
-To: Greg Kroah-Hartman <gregkh@suse.de>
-Cc: USB development list <linux-usb-devel@lists.sourceforge.net>
-Message-ID: <Pine.LNX.4.44L0.0704231727460.4903-100000@iolanthe.rowland.org>
-
-
-This patch (as902) fixes a mistake I introduced into usb_bulk_msg().
-usb_fill_int_urb() already does the bit-shifting calculation for
-high-speed Interrupt intervals; it shouldn't be done twice.
-
-Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
-
----
- drivers/usb/core/message.c | 9 ++-------
- 1 file changed, 2 insertions(+), 7 deletions(-)
-
---- a/drivers/usb/core/message.c
-+++ b/drivers/usb/core/message.c
-@@ -221,15 +221,10 @@ int usb_bulk_msg(struct usb_device *usb_
-
- if ((ep->desc.bmAttributes & USB_ENDPOINT_XFERTYPE_MASK) ==
- USB_ENDPOINT_XFER_INT) {
-- int interval;
--
-- if (usb_dev->speed == USB_SPEED_HIGH)
-- interval = 1 << min(15, ep->desc.bInterval - 1);
-- else
-- interval = ep->desc.bInterval;
- pipe = (pipe & ~(3 << 30)) | (PIPE_INTERRUPT << 30);
- usb_fill_int_urb(urb, usb_dev, pipe, data, len,
-- usb_api_blocking_completion, NULL, interval);
-+ usb_api_blocking_completion, NULL,
-+ ep->desc.bInterval);
- } else
- usb_fill_bulk_urb(urb, usb_dev, pipe, data, len,
- usb_api_blocking_completion, NULL);
diff --git a/usb/usb-storage-ignore-sitecom-wl-117-usb-wlan.patch b/usb/usb-storage-ignore-sitecom-wl-117-usb-wlan.patch
deleted file mode 100644
index fc3f7057356104..00000000000000
--- a/usb/usb-storage-ignore-sitecom-wl-117-usb-wlan.patch
+++ /dev/null
@@ -1,53 +0,0 @@
-From dsd@gentoo.org Mon Apr 30 17:45:32 2007
-From: Matthew Davidson <mj.davidson@gmail.com>
-Date: Tue, 1 May 2007 01:15:01 +0100 (BST)
-Subject: usb-storage: ignore Sitecom WL-117 USB-WLAN
-To: greg@kroah.com
-Cc: mj.davidson@gmail.com
-Cc: usb-storage@lists.one-eyed-alien.net
-Cc: linux-usb-devel@lists.sourceforge.net
-Cc: <phil@ipom.com>
-Message-ID: <20070501001501.9080E7B409F@zog.reactivated.net>
-
-
-From: Matthew Davidson <mj.davidson@gmail.com>
-
-The Sitecom WL-117 is another "driverless" ZD1211 device where the virtual
-windows driver CD must be ejected before the WLAN device appears.
-
-zd1211rw takes care of the ejecting, but usb-storage must be told not to claim
-the device.
-
-From: Matthew Davidson <mj.davidson@gmail.com>
-Signed-off-by: Daniel Drake <dsd@gentoo.org>
-Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-
----
- drivers/usb/storage/unusual_devs.h | 10 ++++++++--
- 1 file changed, 8 insertions(+), 2 deletions(-)
-
---- a/drivers/usb/storage/unusual_devs.h
-+++ b/drivers/usb/storage/unusual_devs.h
-@@ -1179,14 +1179,20 @@ UNUSUAL_DEV( 0x0a17, 0x006, 0x0000, 0xff
- US_SC_DEVICE, US_PR_DEVICE, NULL,
- US_FL_FIX_INQUIRY ),
-
--/* This is a virtual windows driver CD, which the zd1211rw driver automatically
-- * converts into a WLAN device. */
-+/* These are virtual windows driver CDs, which the zd1211rw driver automatically
-+ * converts into a WLAN devices. */
- UNUSUAL_DEV( 0x0ace, 0x2011, 0x0101, 0x0101,
- "ZyXEL",
- "G-220F USB-WLAN Install",
- US_SC_DEVICE, US_PR_DEVICE, NULL,
- US_FL_IGNORE_DEVICE ),
-
-+UNUSUAL_DEV( 0x0ace, 0x20ff, 0x0101, 0x0101,
-+ "SiteCom",
-+ "WL-117 USB-WLAN Install",
-+ US_SC_DEVICE, US_PR_DEVICE, NULL,
-+ US_FL_IGNORE_DEVICE ),
-+
- #ifdef CONFIG_USB_STORAGE_ISD200
- UNUSUAL_DEV( 0x0bf6, 0xa001, 0x0100, 0x0110,
- "ATI",
diff --git a/usb/usb-usblp-use-correct-dma-address-in-case-of-probe-error.patch b/usb/usb-usblp-use-correct-dma-address-in-case-of-probe-error.patch
deleted file mode 100644
index f1b5e8cee5e9ec..00000000000000
--- a/usb/usb-usblp-use-correct-dma-address-in-case-of-probe-error.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From zaitcev@redhat.com Mon May 21 21:26:22 2007
-From: Pete Zaitcev <zaitcev@redhat.com>
-Date: Mon, 21 May 2007 20:52:44 -0700
-Subject: USB: usblp: Use correct DMA address in case of probe error
-To: greg@kroah.com
-Cc: zaitcev@redhat.com, linux-usb-devel@lists.sourceforge.net
-Message-ID: <20070521205244.e4e3b874.zaitcev@redhat.com>
-
-
-Looks like the error path had a copy-paste error. The normal exit path
-uses correct URB already.
-
-Signed-off-by: Pete Zaitcev <zaitcev@redhat.com>
-Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-
----
- drivers/usb/class/usblp.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
---- a/drivers/usb/class/usblp.c
-+++ b/drivers/usb/class/usblp.c
-@@ -1003,7 +1003,7 @@ abort:
- usblp->writebuf, usblp->writeurb->transfer_dma);
- if (usblp->readbuf)
- usb_buffer_free (usblp->dev, USBLP_BUF_SIZE,
-- usblp->readbuf, usblp->writeurb->transfer_dma);
-+ usblp->readbuf, usblp->readurb->transfer_dma);
- kfree(usblp->statusbuf);
- kfree(usblp->device_id_string);
- usb_free_urb(usblp->writeurb);
diff --git a/version b/version
index 23487016d59fcd..4a226e10a630cb 100644
--- a/version
+++ b/version
@@ -1 +1 @@
-2.6.22-rc2-git3
+2.6.22-rc2-git5