diff options
| author | Greg Kroah-Hartman <gregkh@suse.de> | 2009-04-21 23:04:34 -0700 |
|---|---|---|
| committer | Greg Kroah-Hartman <gregkh@suse.de> | 2009-04-21 23:04:34 -0700 |
| commit | 3fc445d47e4235983450c884be2404a0a0029958 (patch) | |
| tree | ce9578bf3aec6e6f44814fd942ac63bc5dfead28 /usb.current | |
| parent | 7142d75625b830b24097e7fa6783cb7ce060a620 (diff) | |
| download | patches-3fc445d47e4235983450c884be2404a0a0029958.tar.gz | |
usb patches and sync with 2.6.30-rc3
Diffstat (limited to 'usb.current')
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; |
