aboutsummaryrefslogtreecommitdiffstats
path: root/usb.current
diff options
authorGreg Kroah-Hartman <gregkh@suse.de>2009-04-21 23:04:34 -0700
committerGreg Kroah-Hartman <gregkh@suse.de>2009-04-21 23:04:34 -0700
commit3fc445d47e4235983450c884be2404a0a0029958 (patch)
treece9578bf3aec6e6f44814fd942ac63bc5dfead28 /usb.current
parent7142d75625b830b24097e7fa6783cb7ce060a620 (diff)
downloadpatches-3fc445d47e4235983450c884be2404a0a0029958.tar.gz
usb patches and sync with 2.6.30-rc3
Diffstat (limited to 'usb.current')
-rw-r--r--usb.current/usb-ci13xxx_udc-fix-build-error.patch30
-rw-r--r--usb.current/usb-ehci-sched.c-ehci-sitd-scheduling-bugfix.patch2
-rw-r--r--usb.current/usb-gadget-omap_udc-uses-platform_driver_probe.patch40
-rw-r--r--usb.current/usb-musb-prevent-multiple-includes-of-musb.h.patch40
-rw-r--r--usb.current/usb-serial-sierra-driver-bug-fix-for-composite-interface.patch73
5 files changed, 184 insertions, 1 deletions
diff --git a/usb.current/usb-ci13xxx_udc-fix-build-error.patch b/usb.current/usb-ci13xxx_udc-fix-build-error.patch
new file mode 100644
index 00000000000000..905a9b4976d65d
--- /dev/null
+++ b/usb.current/usb-ci13xxx_udc-fix-build-error.patch
@@ -0,0 +1,30 @@
+From matthias@kaehlcke.net Tue Apr 21 22:57:08 2009
+From: Matthias Kaehlcke <matthias@kaehlcke.net>
+Date: Wed, 15 Apr 2009 22:28:36 +0200
+Subject: USB: ci13xxx_udc: fix build error
+To: Greg KH <greg@kroah.com>, dbrownell@users.sourceforge.net
+Message-ID: <20090415202836.GV8693@traven>
+Content-Disposition: inline
+
+
+Fix build error in the MIPS USB IP core family device controller driver.
+The driver calls udelay() without including linux/delay.h
+
+Signed-off-by: Matthias Kaehlcke <matthias@kaehlcke.net>
+Acked-by: David Brownell <dbrownell@users.sourceforge.net>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/usb/gadget/ci13xxx_udc.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+--- a/drivers/usb/gadget/ci13xxx_udc.c
++++ b/drivers/usb/gadget/ci13xxx_udc.c
+@@ -51,6 +51,7 @@
+ * - Gadget API (majority of optional features)
+ * - Suspend & Remote Wakeup
+ */
++#include <linux/delay.h>
+ #include <linux/device.h>
+ #include <linux/dmapool.h>
+ #include <linux/dma-mapping.h>
diff --git a/usb.current/usb-ehci-sched.c-ehci-sitd-scheduling-bugfix.patch b/usb.current/usb-ehci-sched.c-ehci-sitd-scheduling-bugfix.patch
index 844feaa3727af5..1bf017be290caf 100644
--- a/usb.current/usb-ehci-sched.c-ehci-sitd-scheduling-bugfix.patch
+++ b/usb.current/usb-ehci-sched.c-ehci-sitd-scheduling-bugfix.patch
@@ -25,7 +25,7 @@ device, this patch may help.
Signed-off-by: Dan Streetman <ddstreet@ieee.org>
Reported-by: Kung James <kong1191@gmail.com>
-Cc: David Brownell <david-b@pacbell.net>
+Acked-by: David Brownell <dbrownell@users.sourceforge.net>
Cc: Alan Stern <stern@rowland.harvard.edu>
diff --git a/usb.current/usb-gadget-omap_udc-uses-platform_driver_probe.patch b/usb.current/usb-gadget-omap_udc-uses-platform_driver_probe.patch
new file mode 100644
index 00000000000000..45274cea2672f3
--- /dev/null
+++ b/usb.current/usb-gadget-omap_udc-uses-platform_driver_probe.patch
@@ -0,0 +1,40 @@
+From david-b@pacbell.net Tue Apr 21 22:40:44 2009
+From: David Brownell <david-b@pacbell.net>
+Date: Thu, 16 Apr 2009 13:51:46 -0700
+Subject: USB: gadget: omap_udc uses platform_driver_probe()
+To: Greg KH <greg@kroah.com>
+Cc: "Uwe Kleine-K�nig" <u.kleine-koenig@pengutronix.de>
+Message-ID: <200904161351.46652.david-b@pacbell.net>
+
+
+From: David Brownell <dbrownell@users.sourceforge.net>
+
+We now have a more correct solution for shrinking runtime driver
+footprints than just marking probe() as __init ... use it.
+
+Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/usb/gadget/omap_udc.c | 3 +--
+ 1 file changed, 1 insertion(+), 2 deletions(-)
+
+--- a/drivers/usb/gadget/omap_udc.c
++++ b/drivers/usb/gadget/omap_udc.c
+@@ -3104,7 +3104,6 @@ static int omap_udc_resume(struct platfo
+ /*-------------------------------------------------------------------------*/
+
+ static struct platform_driver udc_driver = {
+- .probe = omap_udc_probe,
+ .remove = __exit_p(omap_udc_remove),
+ .suspend = omap_udc_suspend,
+ .resume = omap_udc_resume,
+@@ -3122,7 +3121,7 @@ static int __init udc_init(void)
+ #endif
+ "%s\n", driver_desc,
+ use_dma ? " (dma)" : "");
+- return platform_driver_register(&udc_driver);
++ return platform_driver_probe(&udc_driver, omap_udc_probe);
+ }
+ module_init(udc_init);
+
diff --git a/usb.current/usb-musb-prevent-multiple-includes-of-musb.h.patch b/usb.current/usb-musb-prevent-multiple-includes-of-musb.h.patch
new file mode 100644
index 00000000000000..bd8444dee2f1c1
--- /dev/null
+++ b/usb.current/usb-musb-prevent-multiple-includes-of-musb.h.patch
@@ -0,0 +1,40 @@
+From david-b@pacbell.net Tue Apr 21 22:35:24 2009
+From: Mark A. Greer <mgreer@mvista.com>
+Date: Tue, 21 Apr 2009 20:52:54 -0700
+Subject: USB: musb: Prevent multiple includes of musb.h
+To: Greg KH <greg@kroah.com>
+Cc: "Mark A. Greer" <mgreer@mvista.com>
+Message-ID: <200904212052.54393.david-b@pacbell.net>
+Content-Disposition: inline
+
+
+From: Mark A. Greer <mgreer@mvista.com>
+
+Add #ifndef to musb header file to prevent multiple inclusions.
+
+Signed-off-by: Mark A. Greer <mgreer@mvista.com>
+Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ include/linux/usb/musb.h | 5 +++++
+ 1 file changed, 5 insertions(+)
+
+--- a/include/linux/usb/musb.h
++++ b/include/linux/usb/musb.h
+@@ -7,6 +7,9 @@
+ * key configuration differences between boards.
+ */
+
++#ifndef __LINUX_USB_MUSB_H
++#define __LINUX_USB_MUSB_H
++
+ /* The USB role is defined by the connector used on the board, so long as
+ * standards are being followed. (Developer boards sometimes won't.)
+ */
+@@ -101,3 +104,5 @@ extern int __init tusb6010_setup_interfa
+ extern int tusb6010_platform_retime(unsigned is_refclk);
+
+ #endif /* OMAP2 */
++
++#endif /* __LINUX_USB_MUSB_H */
diff --git a/usb.current/usb-serial-sierra-driver-bug-fix-for-composite-interface.patch b/usb.current/usb-serial-sierra-driver-bug-fix-for-composite-interface.patch
new file mode 100644
index 00000000000000..0083a99c856f50
--- /dev/null
+++ b/usb.current/usb-serial-sierra-driver-bug-fix-for-composite-interface.patch
@@ -0,0 +1,73 @@
+From epasheva@sierrawireless.com Tue Apr 21 22:43:03 2009
+From: Elina Pasheva <epasheva@sierrawireless.com>
+Date: Tue, 21 Apr 2009 17:54:42 -0700
+Subject: USB: serial: sierra driver bug fix for composite interface
+To: <gregkh@suse.de>
+Cc: <epasheva@sierrawireless.com>, <rfiler@sierrawireless.com>
+Message-ID: <1240361682.6322.1.camel@Linuxdev3>
+
+From: Elina Pasheva <epasheva@sierrawireless.com>
+
+This patch fixes a problem in sierra_send_setup() function when
+composite devices are used. One should not be sending ACM commands to
+interfaces that are OBEX. Doing this causes an apparent failure as the
+ACM command has to time out before the interface can start being used.
+
+Signed-off-by: Elina Pasheva <epasheva@sierrawireless.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+
+---
+ drivers/usb/serial/sierra.c | 21 +++++++++++++++++----
+ 1 file changed, 17 insertions(+), 4 deletions(-)
+
+--- a/drivers/usb/serial/sierra.c
++++ b/drivers/usb/serial/sierra.c
+@@ -14,7 +14,7 @@
+ Whom based his on the Keyspan driver by Hugh Blemings <hugh@blemings.org>
+ */
+
+-#define DRIVER_VERSION "v.1.3.2"
++#define DRIVER_VERSION "v.1.3.3"
+ #define DRIVER_AUTHOR "Kevin Lloyd <klloyd@sierrawireless.com>"
+ #define DRIVER_DESC "USB Driver for Sierra Wireless USB modems"
+
+@@ -259,9 +259,21 @@ static int sierra_send_setup(struct tty_
+ val |= 0x02;
+
+ /* If composite device then properly report interface */
+- if (serial->num_ports == 1)
++ if (serial->num_ports == 1) {
+ interface = sierra_calc_interface(serial);
+
++ /* Control message is sent only to interfaces with
++ * interrupt_in endpoints
++ */
++ if (port->interrupt_in_urb) {
++ /* send control message */
++ return usb_control_msg(serial->dev,
++ usb_rcvctrlpipe(serial->dev, 0),
++ 0x22, 0x21, val, interface,
++ NULL, 0, USB_CTRL_SET_TIMEOUT);
++ }
++ }
++
+ /* Otherwise the need to do non-composite mapping */
+ else {
+ if (port->bulk_out_endpointAddress == 2)
+@@ -270,12 +282,13 @@ static int sierra_send_setup(struct tty_
+ interface = 1;
+ else if (port->bulk_out_endpointAddress == 5)
+ interface = 2;
+- }
+
+- return usb_control_msg(serial->dev,
++ return usb_control_msg(serial->dev,
+ usb_rcvctrlpipe(serial->dev, 0),
+ 0x22, 0x21, val, interface,
+ NULL, 0, USB_CTRL_SET_TIMEOUT);
++
++ }
+ }
+
+ return 0;