]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
.33 patches
authorGreg Kroah-Hartman <gregkh@suse.de>
Wed, 28 Jul 2010 22:50:13 +0000 (15:50 -0700)
committerGreg Kroah-Hartman <gregkh@suse.de>
Wed, 28 Jul 2010 22:50:13 +0000 (15:50 -0700)
13 files changed:
queue-2.6.33/series
queue-2.6.33/usb-add-pid-for-sierra-250u-to-drivers-usb-serial-sierra.c.patch [new file with mode: 0644]
queue-2.6.33/usb-add-quirk-for-broadcom-bt-dongle.patch [new file with mode: 0644]
queue-2.6.33/usb-adds-artisman-usb-dongle-to-list-of-quirky-devices.patch [new file with mode: 0644]
queue-2.6.33/usb-ehci-mxc-bail-out-on-transceiver-problems.patch [new file with mode: 0644]
queue-2.6.33/usb-ftdi-add-support-for-the-rt-system-vx-7-radio-programming-cable.patch [new file with mode: 0644]
queue-2.6.33/usb-ftdi_sio-support-for-signalyzer-tools-based-on-ftdi-chips.patch [new file with mode: 0644]
queue-2.6.33/usb-g_serial-don-t-set-low_latency-flag.patch [new file with mode: 0644]
queue-2.6.33/usb-g_serial-fix-tty-cleanup-on-unload.patch [new file with mode: 0644]
queue-2.6.33/usb-obey-the-sysfs-power-wakeup-setting.patch [new file with mode: 0644]
queue-2.6.33/usb-option-add-support-for-1da5-4518.patch [new file with mode: 0644]
queue-2.6.33/usb-option-add-support-for-amoi-skypephone-s2.patch [new file with mode: 0644]
queue-2.6.33/usb-sisusbvga-fix-for-usb-3.0.patch [new file with mode: 0644]

index 9556862bca1a354724069ad3e72ade9e23d01d23..70a15a1bca29cdb3af11b7016db10a73854016f6 100644 (file)
@@ -92,3 +92,15 @@ input-twl40300-keypad-fix-handling-of-all-ground-rows.patch
 arm-6201-1-realview-do-not-use-outer_sync-on-arm11mpcore-boards-with-l220.patch
 arm-6226-1-fix-kprobe-bug-in-ldr-instruction-emulation.patch
 x86-do-not-try-to-disable-hpet-if-it-hasn-t-been-initialized-before.patch
+usb-obey-the-sysfs-power-wakeup-setting.patch
+usb-g_serial-don-t-set-low_latency-flag.patch
+usb-g_serial-fix-tty-cleanup-on-unload.patch
+usb-ehci-mxc-bail-out-on-transceiver-problems.patch
+usb-option-add-support-for-1da5-4518.patch
+usb-add-pid-for-sierra-250u-to-drivers-usb-serial-sierra.c.patch
+usb-ftdi_sio-support-for-signalyzer-tools-based-on-ftdi-chips.patch
+usb-option-add-support-for-amoi-skypephone-s2.patch
+usb-adds-artisman-usb-dongle-to-list-of-quirky-devices.patch
+usb-sisusbvga-fix-for-usb-3.0.patch
+usb-add-quirk-for-broadcom-bt-dongle.patch
+usb-ftdi-add-support-for-the-rt-system-vx-7-radio-programming-cable.patch
diff --git a/queue-2.6.33/usb-add-pid-for-sierra-250u-to-drivers-usb-serial-sierra.c.patch b/queue-2.6.33/usb-add-pid-for-sierra-250u-to-drivers-usb-serial-sierra.c.patch
new file mode 100644 (file)
index 0000000..ca3af73
--- /dev/null
@@ -0,0 +1,30 @@
+From 9d72c81d657340e54a260a3b621f4a9f5b33829c Mon Sep 17 00:00:00 2001
+From: august huber <gus@pbx.org>
+Date: Mon, 28 Jun 2010 11:46:05 -0700
+Subject: USB: Add PID for Sierra 250U to drivers/usb/serial/sierra.c
+
+From: august huber <gus@pbx.org>
+
+commit 9d72c81d657340e54a260a3b621f4a9f5b33829c upstream.
+
+Add VID/PID for Sierra Wireless 250U USB dongle to sierra.c
+Allows use of 3G radio only
+
+Signed-off-by: August Huber <gus@pbx.org>
+Cc: Elina Pasheva <epasheva@sierrawireless.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/usb/serial/sierra.c |    1 +
+ 1 file changed, 1 insertion(+)
+
+--- a/drivers/usb/serial/sierra.c
++++ b/drivers/usb/serial/sierra.c
+@@ -244,6 +244,7 @@ static struct usb_device_id id_table []
+       { USB_DEVICE(0x1199, 0x0021) }, /* Sierra Wireless AirCard 597E */
+       { USB_DEVICE(0x1199, 0x0112) }, /* Sierra Wireless AirCard 580 */
+       { USB_DEVICE(0x1199, 0x0120) }, /* Sierra Wireless USB Dongle 595U */
++      { USB_DEVICE(0x1199, 0x0301) }, /* Sierra Wireless USB Dongle 250U */
+       /* Sierra Wireless C597 */
+       { USB_DEVICE_AND_INTERFACE_INFO(0x1199, 0x0023, 0xFF, 0xFF, 0xFF) },
+       /* Sierra Wireless T598 */
diff --git a/queue-2.6.33/usb-add-quirk-for-broadcom-bt-dongle.patch b/queue-2.6.33/usb-add-quirk-for-broadcom-bt-dongle.patch
new file mode 100644 (file)
index 0000000..9d3a63e
--- /dev/null
@@ -0,0 +1,30 @@
+From 63ab71deae67b031045bb28bf8cff45180089f8f Mon Sep 17 00:00:00 2001
+From: Oliver Neukum <oliver@neukum.org>
+Date: Wed, 14 Jul 2010 18:26:22 +0200
+Subject: USB: add quirk for Broadcom BT dongle
+
+From: Oliver Neukum <oliver@neukum.org>
+
+commit 63ab71deae67b031045bb28bf8cff45180089f8f upstream.
+
+This device needs to be reset when resuming
+
+Signed-off-by: Oliver Neukum <oneukum@suse.de>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/usb/core/quirks.c |    3 +++
+ 1 file changed, 3 insertions(+)
+
+--- a/drivers/usb/core/quirks.c
++++ b/drivers/usb/core/quirks.c
+@@ -68,6 +68,9 @@ static const struct usb_device_id usb_qu
+       /* X-Rite/Gretag-Macbeth Eye-One Pro display colorimeter */
+       { USB_DEVICE(0x0971, 0x2000), .driver_info = USB_QUIRK_NO_SET_INTF },
++      /* Broadcom BCM92035DGROM BT dongle */
++      { USB_DEVICE(0x0a5c, 0x2021), .driver_info = USB_QUIRK_RESET_RESUME },
++
+       /* Action Semiconductor flash disk */
+       { USB_DEVICE(0x10d6, 0x2200), .driver_info =
+                       USB_QUIRK_STRING_FETCH_255 },
diff --git a/queue-2.6.33/usb-adds-artisman-usb-dongle-to-list-of-quirky-devices.patch b/queue-2.6.33/usb-adds-artisman-usb-dongle-to-list-of-quirky-devices.patch
new file mode 100644 (file)
index 0000000..e03fde3
--- /dev/null
@@ -0,0 +1,39 @@
+From 47f19c0eedb377ad1ee8114f464d001ec5f96a69 Mon Sep 17 00:00:00 2001
+From: Paul Mortier <mortier@btinternet.com>
+Date: Fri, 9 Jul 2010 13:18:50 +0100
+Subject: USB: adds Artisman USB dongle to list of quirky devices
+
+From: Paul Mortier <mortier@btinternet.com>
+
+commit 47f19c0eedb377ad1ee8114f464d001ec5f96a69 upstream.
+
+When an attempt is made to read the interface strings of the Artisman
+Watchdog USB dongle (idVendor:idProduct 04b4:0526) an error is written
+to the dmesg log (uhci_result_common: failed with status 440000) and the
+dongle resets itself, resulting in a disconnect/reconnect loop.
+
+Adding the dongle to the list of devices in quirks.c, with the same
+quirk Alan Stern's previous patch for the Saitek Cyborg Gold 3D
+joystick, stops the device from resetting and allows it to be used with
+no problems.
+
+Signed-off-by: Paul Mortier <mortier@btinternet.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/usb/core/quirks.c |    4 ++++
+ 1 file changed, 4 insertions(+)
+
+--- a/drivers/usb/core/quirks.c
++++ b/drivers/usb/core/quirks.c
+@@ -41,6 +41,10 @@ static const struct usb_device_id usb_qu
+       /* Philips PSC805 audio device */
+       { USB_DEVICE(0x0471, 0x0155), .driver_info = USB_QUIRK_RESET_RESUME },
++      /* Artisman Watchdog Dongle */
++      { USB_DEVICE(0x04b4, 0x0526), .driver_info =
++                      USB_QUIRK_CONFIG_INTF_STRINGS },
++
+       /* Roland SC-8820 */
+       { USB_DEVICE(0x0582, 0x0007), .driver_info = USB_QUIRK_RESET_RESUME },
diff --git a/queue-2.6.33/usb-ehci-mxc-bail-out-on-transceiver-problems.patch b/queue-2.6.33/usb-ehci-mxc-bail-out-on-transceiver-problems.patch
new file mode 100644 (file)
index 0000000..440350a
--- /dev/null
@@ -0,0 +1,68 @@
+From 4c9715de52b9b6256bf1e9510917111a47b0c176 Mon Sep 17 00:00:00 2001
+From: Wolfram Sang <w.sang@pengutronix.de>
+Date: Tue, 15 Jun 2010 12:34:23 +0200
+Subject: USB: ehci-mxc: bail out on transceiver problems
+
+From: Wolfram Sang <w.sang@pengutronix.de>
+
+commit 4c9715de52b9b6256bf1e9510917111a47b0c176 upstream.
+
+The old code registered the hcd even if there were no transceivers
+detected, leading to oopses like this if we try to probe a non-existant
+ULPI:
+
+[    2.730000] mxc-ehci mxc-ehci.0: unable to init transceiver
+[    2.740000] timeout polling for ULPI device
+[    2.740000] timeout polling for ULPI device
+[    2.750000] mxc-ehci mxc-ehci.0: unable to enable vbus on transceiver
+[    2.750000] mxc-ehci mxc-ehci.0: Freescale On-Chip EHCI Host Controller
+[    2.760000] mxc-ehci mxc-ehci.0: new USB bus registered, assigned bus number 2
+[    2.770000] Unhandled fault: external abort on non-linefetch (0x808) at 0xc4876184
+[    2.770000] Internal error: : 808 [#1] PREEMPT
+[    2.770000] last sysfs file:
+[    2.770000] Modules linked in:
+[    2.770000] CPU: 0    Not tainted  (2.6.33.5 #5)
+[    2.770000] PC is at ehci_hub_control+0x4d4/0x8f8
+[    2.770000] LR is at ehci_mxc_setup+0xbc/0xdc
+[    2.770000] pc : [<c0196dfc>]    lr : [<c019bc8c>]    psr: 00000093
+[    2.770000] sp : c3815e40  ip : 00000001  fp : 60000013
+[    2.770000] r10: c4876184  r9 : 00000000  r8 : c3814000
+[    2.770000] r7 : c391d2cc  r6 : 00000001  r5 : 00000001  r4 : 00000000
+[    2.770000] r3 : 80000000  r2 : 00000007  r1 : 80000000  r0 : c4876184
+[    2.770000] Flags: nzcv  IRQs off  FIQs on  Mode SVC_32  ISA ARM Segment kernel
+[    2.770000] Control: 0005317f  Table: a0004000  DAC: 00000017
+[    2.770000] Process swapper (pid: 1, stack limit = 0xc3814270)
+...
+
+Signed-off-by: Wolfram Sang <w.sang@pengutronix.de>
+Cc: Sascha Hauer <s.hauer@pengutronix.de>
+Acked-by: Daniel Mack <daniel@caiaq.de>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/usb/host/ehci-mxc.c |   13 ++++++++++---
+ 1 file changed, 10 insertions(+), 3 deletions(-)
+
+--- a/drivers/usb/host/ehci-mxc.c
++++ b/drivers/usb/host/ehci-mxc.c
+@@ -207,10 +207,17 @@ static int ehci_mxc_drv_probe(struct pla
+       /* Initialize the transceiver */
+       if (pdata->otg) {
+               pdata->otg->io_priv = hcd->regs + ULPI_VIEWPORT_OFFSET;
+-              if (otg_init(pdata->otg) != 0)
+-                      dev_err(dev, "unable to init transceiver\n");
+-              else if (otg_set_vbus(pdata->otg, 1) != 0)
++              ret = otg_init(pdata->otg);
++              if (ret) {
++                      dev_err(dev, "unable to init transceiver, probably missing\n");
++                      ret = -ENODEV;
++                      goto err_add;
++              }
++              ret = otg_set_vbus(pdata->otg, 1);
++              if (ret) {
+                       dev_err(dev, "unable to enable vbus on transceiver\n");
++                      goto err_add;
++              }
+       }
+       priv->hcd = hcd;
diff --git a/queue-2.6.33/usb-ftdi-add-support-for-the-rt-system-vx-7-radio-programming-cable.patch b/queue-2.6.33/usb-ftdi-add-support-for-the-rt-system-vx-7-radio-programming-cable.patch
new file mode 100644 (file)
index 0000000..0241f19
--- /dev/null
@@ -0,0 +1,46 @@
+From fcc6cb789c77ffee31710eec64efeb25f2124f7a Mon Sep 17 00:00:00 2001
+From: Corey Minyard <minyard@acm.org>
+Date: Wed, 21 Jul 2010 08:39:22 -0500
+Subject: USB: FTDI: Add support for the RT System VX-7 radio programming cable
+
+From: Corey Minyard <minyard@acm.org>
+
+commit fcc6cb789c77ffee31710eec64efeb25f2124f7a upstream.
+
+RT Systems has put out bunch of ham radio cables based on the FT232RL
+chip.  Each cable type has a unique PID, this adds one for the Yaesu VX-7
+radios.
+
+Signed-off-by: Corey Minyard <minyard@acm.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/usb/serial/ftdi_sio.c     |    1 +
+ drivers/usb/serial/ftdi_sio_ids.h |    6 ++++++
+ 2 files changed, 7 insertions(+)
+
+--- a/drivers/usb/serial/ftdi_sio.c
++++ b/drivers/usb/serial/ftdi_sio.c
+@@ -697,6 +697,7 @@ static struct usb_device_id id_table_com
+       { USB_DEVICE(FTDI_VID, FTDI_NDI_AURORA_SCU_PID),
+               .driver_info = (kernel_ulong_t)&ftdi_NDI_device_quirk },
+       { USB_DEVICE(TELLDUS_VID, TELLDUS_TELLSTICK_PID) },
++      { USB_DEVICE(RTSYSTEMS_VID, RTSYSTEMS_SERIAL_VX7_PID) },
+       { USB_DEVICE(FTDI_VID, FTDI_MAXSTREAM_PID) },
+       { USB_DEVICE(FTDI_VID, FTDI_PHI_FISCO_PID) },
+       { USB_DEVICE(TML_VID, TML_USB_SERIAL_PID) },
+--- a/drivers/usb/serial/ftdi_sio_ids.h
++++ b/drivers/usb/serial/ftdi_sio_ids.h
+@@ -703,6 +703,12 @@
+ #define TELLDUS_TELLSTICK_PID         0x0C30  /* RF control dongle 433 MHz using FT232RL */
+ /*
++ * RT Systems programming cables for various ham radios
++ */
++#define RTSYSTEMS_VID                 0x2100  /* Vendor ID */
++#define RTSYSTEMS_SERIAL_VX7_PID      0x9e52  /* Serial converter for VX-7 Radios using FT232RL */
++
++/*
+  * Bayer Ascensia Contour blood glucose meter USB-converter cable.
+  * http://winglucofacts.com/cables/
+  */
diff --git a/queue-2.6.33/usb-ftdi_sio-support-for-signalyzer-tools-based-on-ftdi-chips.patch b/queue-2.6.33/usb-ftdi_sio-support-for-signalyzer-tools-based-on-ftdi-chips.patch
new file mode 100644 (file)
index 0000000..1070791
--- /dev/null
@@ -0,0 +1,53 @@
+From 77dbd74e16b566e9d5eeb4be18ae3ee7d5902bd3 Mon Sep 17 00:00:00 2001
+From: Colin Leitner <colin.leitner@googlemail.com>
+Date: Thu, 1 Jul 2010 10:49:55 +0200
+Subject: USB: ftdi_sio: support for Signalyzer tools based on FTDI chips
+
+From: Colin Leitner <colin.leitner@googlemail.com>
+
+commit 77dbd74e16b566e9d5eeb4be18ae3ee7d5902bd3 upstream.
+
+ftdi_sio: support for Signalyzer tools based on FTDI chips
+
+This patch adds support for the Xverve Signalyzers.
+
+Signed-off-by: Colin Leitner <colin.leitner@googlemail.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/usb/serial/ftdi_sio.c     |    8 ++++++++
+ drivers/usb/serial/ftdi_sio_ids.h |    9 +++++++++
+ 2 files changed, 17 insertions(+)
+
+--- a/drivers/usb/serial/ftdi_sio.c
++++ b/drivers/usb/serial/ftdi_sio.c
+@@ -743,6 +743,14 @@ static struct usb_device_id id_table_com
+       { USB_DEVICE(FTDI_VID, MJSG_SR_RADIO_PID) },
+       { USB_DEVICE(FTDI_VID, MJSG_HD_RADIO_PID) },
+       { USB_DEVICE(FTDI_VID, MJSG_XM_RADIO_PID) },
++      { USB_DEVICE(FTDI_VID, XVERVE_SIGNALYZER_ST_PID),
++              .driver_info = (kernel_ulong_t)&ftdi_jtag_quirk },
++      { USB_DEVICE(FTDI_VID, XVERVE_SIGNALYZER_SLITE_PID),
++              .driver_info = (kernel_ulong_t)&ftdi_jtag_quirk },
++      { USB_DEVICE(FTDI_VID, XVERVE_SIGNALYZER_SH2_PID),
++              .driver_info = (kernel_ulong_t)&ftdi_jtag_quirk },
++      { USB_DEVICE(FTDI_VID, XVERVE_SIGNALYZER_SH4_PID),
++              .driver_info = (kernel_ulong_t)&ftdi_jtag_quirk },
+       { },                                    /* Optional parameter entry */
+       { }                                     /* Terminating entry */
+ };
+--- a/drivers/usb/serial/ftdi_sio_ids.h
++++ b/drivers/usb/serial/ftdi_sio_ids.h
+@@ -1024,3 +1024,12 @@
+ #define MJSG_SR_RADIO_PID     0x9379
+ #define MJSG_XM_RADIO_PID     0x937A
+ #define MJSG_HD_RADIO_PID     0x937C
++
++/*
++ * Xverve Signalyzer tools (http://www.signalyzer.com/)
++ */
++#define XVERVE_SIGNALYZER_ST_PID      0xBCA0
++#define XVERVE_SIGNALYZER_SLITE_PID   0xBCA1
++#define XVERVE_SIGNALYZER_SH2_PID     0xBCA2
++#define XVERVE_SIGNALYZER_SH4_PID     0xBCA4
++
diff --git a/queue-2.6.33/usb-g_serial-don-t-set-low_latency-flag.patch b/queue-2.6.33/usb-g_serial-don-t-set-low_latency-flag.patch
new file mode 100644 (file)
index 0000000..b91e7da
--- /dev/null
@@ -0,0 +1,58 @@
+From 44a0c0190b500ee6bcfc0976fe540f65dee2cd67 Mon Sep 17 00:00:00 2001
+From: Jon Povey <jon.povey@racelogic.co.uk>
+Date: Mon, 14 Jun 2010 19:41:04 +0900
+Subject: USB: g_serial: don't set low_latency flag
+
+From: Jon Povey <jon.povey@racelogic.co.uk>
+
+commit 44a0c0190b500ee6bcfc0976fe540f65dee2cd67 upstream.
+
+No longer set low_latency flag as it causes this warning backtrace:
+
+  WARNING: at kernel/mutex.c:207 __mutex_lock_slowpath+0x6c/0x288()
+
+Fix associated locking and wakeups.
+
+Signed-off-by: Jon Povey <jon.povey@racelogic.co.uk>
+Cc: Maulik Mankad <x0082077@ti.com>
+Acked-by: David Brownell <dbrownell@users.sourceforge.net>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/usb/gadget/u_serial.c |   15 ++-------------
+ 1 file changed, 2 insertions(+), 13 deletions(-)
+
+--- a/drivers/usb/gadget/u_serial.c
++++ b/drivers/usb/gadget/u_serial.c
+@@ -535,17 +535,11 @@ recycle:
+               list_move(&req->list, &port->read_pool);
+       }
+-      /* Push from tty to ldisc; this is immediate with low_latency, and
+-       * may trigger callbacks to this driver ... so drop the spinlock.
++      /* Push from tty to ldisc; without low_latency set this is handled by
++       * a workqueue, so we won't get callbacks and can hold port_lock
+        */
+       if (tty && do_push) {
+-              spin_unlock_irq(&port->port_lock);
+               tty_flip_buffer_push(tty);
+-              wake_up_interruptible(&tty->read_wait);
+-              spin_lock_irq(&port->port_lock);
+-
+-              /* tty may have been closed */
+-              tty = port->port_tty;
+       }
+@@ -783,11 +777,6 @@ static int gs_open(struct tty_struct *tt
+       port->open_count = 1;
+       port->openclose = false;
+-      /* low_latency means ldiscs work in tasklet context, without
+-       * needing a workqueue schedule ... easier to keep up.
+-       */
+-      tty->low_latency = 1;
+-
+       /* if connected, start the I/O stream */
+       if (port->port_usb) {
+               struct gserial  *gser = port->port_usb;
diff --git a/queue-2.6.33/usb-g_serial-fix-tty-cleanup-on-unload.patch b/queue-2.6.33/usb-g_serial-fix-tty-cleanup-on-unload.patch
new file mode 100644 (file)
index 0000000..3ce026a
--- /dev/null
@@ -0,0 +1,30 @@
+From b23097b793081358a6d943263c91bae4c955c4e3 Mon Sep 17 00:00:00 2001
+From: Jon Povey <jon.povey@racelogic.co.uk>
+Date: Mon, 14 Jun 2010 19:42:10 +0900
+Subject: USB: g_serial: fix tty cleanup on unload
+
+From: Jon Povey <jon.povey@racelogic.co.uk>
+
+commit b23097b793081358a6d943263c91bae4c955c4e3 upstream.
+
+Call put_tty_driver() in cleanup function, to fix Oops when trying to open
+gadget serial char device after module unload.
+
+Signed-off-by: Jon Povey <jon.povey@racelogic.co.uk>
+Acked-by: David Brownell <dbrownell@users.sourceforge.net>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/usb/gadget/u_serial.c |    1 +
+ 1 file changed, 1 insertion(+)
+
+--- a/drivers/usb/gadget/u_serial.c
++++ b/drivers/usb/gadget/u_serial.c
+@@ -1183,6 +1183,7 @@ void gserial_cleanup(void)
+       n_ports = 0;
+       tty_unregister_driver(gs_tty_driver);
++      put_tty_driver(gs_tty_driver);
+       gs_tty_driver = NULL;
+       pr_debug("%s: cleaned up ttyGS* support\n", __func__);
diff --git a/queue-2.6.33/usb-obey-the-sysfs-power-wakeup-setting.patch b/queue-2.6.33/usb-obey-the-sysfs-power-wakeup-setting.patch
new file mode 100644 (file)
index 0000000..43aaf50
--- /dev/null
@@ -0,0 +1,69 @@
+From 48826626263d4a61d06fd8c5805da31f925aefa0 Mon Sep 17 00:00:00 2001
+From: Alan Stern <stern@rowland.harvard.edu>
+Date: Tue, 22 Jun 2010 16:14:48 -0400
+Subject: USB: obey the sysfs power/wakeup setting
+
+From: Alan Stern <stern@rowland.harvard.edu>
+
+commit 48826626263d4a61d06fd8c5805da31f925aefa0 upstream.
+
+This patch (as1403) is a partial reversion of an earlier change
+(commit 5f677f1d45b2bf08085bbba7394392dfa586fa8e "USB: fix remote
+wakeup settings during system sleep").  After hearing from a user, I
+realized that remote wakeup should be enabled during system sleep
+whenever userspace allows it, and not only if a driver requests it
+too.
+
+Indeed, there could be a device with no driver, that does nothing but
+generate a wakeup request when the user presses a button.  Such a
+device should be allowed to do its job.
+
+The problem fixed by the earlier patch -- device generating a wakeup
+request for no reason, causing system suspend to abort -- was also
+addressed by a later patch ("USB: don't enable remote wakeup by
+default", accepted but not yet merged into mainline).  The device
+won't be able to generate the bogus wakeup requests because it will be
+disabled for remote wakeup by default.  Hence this reversion will not
+re-introduce any old problems.
+
+Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+
+---
+ drivers/usb/core/driver.c |   15 ++-------------
+ 1 file changed, 2 insertions(+), 13 deletions(-)
+
+--- a/drivers/usb/core/driver.c
++++ b/drivers/usb/core/driver.c
+@@ -1790,9 +1790,6 @@ int usb_external_resume_device(struct us
+ static void choose_wakeup(struct usb_device *udev, pm_message_t msg)
+ {
+-      int                     w, i;
+-      struct usb_interface    *intf;
+-
+       /* Remote wakeup is needed only when we actually go to sleep.
+        * For things like FREEZE and QUIESCE, if the device is already
+        * autosuspended then its current wakeup setting is okay.
+@@ -1802,18 +1799,10 @@ static void choose_wakeup(struct usb_dev
+               return;
+       }
+-      /* If remote wakeup is permitted, see whether any interface drivers
++      /* Allow remote wakeup if it is enabled, even if no interface drivers
+        * actually want it.
+        */
+-      w = 0;
+-      if (device_may_wakeup(&udev->dev) && udev->actconfig) {
+-              for (i = 0; i < udev->actconfig->desc.bNumInterfaces; i++) {
+-                      intf = udev->actconfig->interface[i];
+-                      w |= intf->needs_remote_wakeup;
+-              }
+-      }
+-
+-      udev->do_remote_wakeup = w;
++      udev->do_remote_wakeup = device_may_wakeup(&udev->dev);
+ }
+ int usb_suspend(struct device *dev, pm_message_t msg)
diff --git a/queue-2.6.33/usb-option-add-support-for-1da5-4518.patch b/queue-2.6.33/usb-option-add-support-for-1da5-4518.patch
new file mode 100644 (file)
index 0000000..14b3d58
--- /dev/null
@@ -0,0 +1,34 @@
+From 646d90e2b925578abef5c45853e0b166b6a450bf Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?=C3=96mer=20Sezgin=20Ugurlu?= <omer.ugurlu@a-kent.com>
+Date: Mon, 28 Jun 2010 19:01:58 +0300
+Subject: USB: option: add support for 1da5:4518
+
+From: =?UTF-8?q?=C3=96mer=20Sezgin=20Ugurlu?= <omer.ugurlu@a-kent.com>
+
+commit 646d90e2b925578abef5c45853e0b166b6a450bf upstream.
+
+Signed-off-by: Omer Sezgin Ugurlu <omer.ugurlu@a-kent.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/usb/serial/option.c |    2 ++
+ 1 file changed, 2 insertions(+)
+
+--- a/drivers/usb/serial/option.c
++++ b/drivers/usb/serial/option.c
+@@ -316,6 +316,7 @@ static int  option_resume(struct usb_ser
+ #define QISDA_PRODUCT_H21_4512                        0x4512
+ #define QISDA_PRODUCT_H21_4523                        0x4523
+ #define QISDA_PRODUCT_H20_4515                        0x4515
++#define QISDA_PRODUCT_H20_4518                        0x4518
+ #define QISDA_PRODUCT_H20_4519                        0x4519
+ /* TLAYTECH PRODUCTS */
+@@ -836,6 +837,7 @@ static struct usb_device_id option_ids[]
+       { USB_DEVICE(QISDA_VENDOR_ID, QISDA_PRODUCT_H21_4512) },
+       { USB_DEVICE(QISDA_VENDOR_ID, QISDA_PRODUCT_H21_4523) },
+       { USB_DEVICE(QISDA_VENDOR_ID, QISDA_PRODUCT_H20_4515) },
++      { USB_DEVICE(QISDA_VENDOR_ID, QISDA_PRODUCT_H20_4518) },
+       { USB_DEVICE(QISDA_VENDOR_ID, QISDA_PRODUCT_H20_4519) },
+       { USB_DEVICE(TOSHIBA_VENDOR_ID, TOSHIBA_PRODUCT_G450) },
+       { USB_DEVICE(TOSHIBA_VENDOR_ID, TOSHIBA_PRODUCT_HSDPA_MINICARD ) }, /* Toshiba 3G HSDPA == Novatel Expedite EU870D MiniCard */
diff --git a/queue-2.6.33/usb-option-add-support-for-amoi-skypephone-s2.patch b/queue-2.6.33/usb-option-add-support-for-amoi-skypephone-s2.patch
new file mode 100644 (file)
index 0000000..6d65e70
--- /dev/null
@@ -0,0 +1,39 @@
+From 7595931c986f50b1e197ce7b881563e36a7d041e Mon Sep 17 00:00:00 2001
+From: Dennis Jansen <d.g.jansen@googlemail.com>
+Date: Fri, 9 Jul 2010 22:03:53 +0200
+Subject: USB: option: Add support for AMOI Skypephone S2
+
+From: Dennis Jansen <d.g.jansen@googlemail.com>
+
+commit 7595931c986f50b1e197ce7b881563e36a7d041e upstream.
+
+usbserial: Add AMOI Skypephone S2 support.
+
+This patch adds support for the AMOI Skypephone S2 to the usbserial module.
+
+Tested-by: Dennis Jansen <Dennis.Jansen@web.de>
+Signed-off-by: Dennis Jansen <Dennis.Jansen@web.de>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/usb/serial/option.c |    2 ++
+ 1 file changed, 2 insertions(+)
+
+--- a/drivers/usb/serial/option.c
++++ b/drivers/usb/serial/option.c
+@@ -226,6 +226,7 @@ static int  option_resume(struct usb_ser
+ #define AMOI_PRODUCT_H01                      0x0800
+ #define AMOI_PRODUCT_H01A                     0x7002
+ #define AMOI_PRODUCT_H02                      0x0802
++#define AMOI_PRODUCT_SKYPEPHONE_S2            0x0407
+ #define DELL_VENDOR_ID                                0x413C
+@@ -504,6 +505,7 @@ static struct usb_device_id option_ids[]
+       { USB_DEVICE(AMOI_VENDOR_ID, AMOI_PRODUCT_H01) },
+       { USB_DEVICE(AMOI_VENDOR_ID, AMOI_PRODUCT_H01A) },
+       { USB_DEVICE(AMOI_VENDOR_ID, AMOI_PRODUCT_H02) },
++      { USB_DEVICE(AMOI_VENDOR_ID, AMOI_PRODUCT_SKYPEPHONE_S2) },
+       { USB_DEVICE(DELL_VENDOR_ID, DELL_PRODUCT_5700_MINICARD) },             /* Dell Wireless 5700 Mobile Broadband CDMA/EVDO Mini-Card == Novatel Expedite EV620 CDMA/EV-DO */
+       { USB_DEVICE(DELL_VENDOR_ID, DELL_PRODUCT_5500_MINICARD) },             /* Dell Wireless 5500 Mobile Broadband HSDPA Mini-Card == Novatel Expedite EU740 HSDPA/3G */
diff --git a/queue-2.6.33/usb-sisusbvga-fix-for-usb-3.0.patch b/queue-2.6.33/usb-sisusbvga-fix-for-usb-3.0.patch
new file mode 100644 (file)
index 0000000..ad12a36
--- /dev/null
@@ -0,0 +1,40 @@
+From 20a12f007feee1cfa761b431047271d1141d8031 Mon Sep 17 00:00:00 2001
+From: Oliver Neukum <oliver@neukum.org>
+Date: Fri, 16 Jul 2010 17:36:26 +0200
+Subject: USB: sisusbvga: Fix for USB 3.0
+
+From: Oliver Neukum <oliver@neukum.org>
+
+commit 20a12f007feee1cfa761b431047271d1141d8031 upstream.
+
+Super speed is also fast enough to let sisusbvga operate.
+Therefor expand the checks.
+
+Signed-off-by: Oliver Neukum <oneukum@suse.de>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/usb/misc/sisusbvga/sisusb.c |    5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+--- a/drivers/usb/misc/sisusbvga/sisusb.c
++++ b/drivers/usb/misc/sisusbvga/sisusb.c
+@@ -2435,7 +2435,8 @@ sisusb_open(struct inode *inode, struct
+       }
+       if (!sisusb->devinit) {
+-              if (sisusb->sisusb_dev->speed == USB_SPEED_HIGH) {
++              if (sisusb->sisusb_dev->speed == USB_SPEED_HIGH ||
++                  sisusb->sisusb_dev->speed == USB_SPEED_SUPER) {
+                       if (sisusb_init_gfxdevice(sisusb, 0)) {
+                               mutex_unlock(&sisusb->lock);
+                               dev_err(&sisusb->sisusb_dev->dev, "Failed to initialize device\n");
+@@ -3167,7 +3168,7 @@ static int sisusb_probe(struct usb_inter
+       sisusb->present = 1;
+-      if (dev->speed == USB_SPEED_HIGH) {
++      if (dev->speed == USB_SPEED_HIGH || dev->speed == USB_SPEED_SUPER) {
+               int initscreen = 1;
+ #ifdef INCL_SISUSB_CON
+               if (sisusb_first_vc > 0 &&