aboutsummaryrefslogtreecommitdiffstats
path: root/usb.current
diff options
authorGreg Kroah-Hartman <gregkh@suse.de>2008-11-25 11:40:42 -0800
committerGreg Kroah-Hartman <gregkh@suse.de>2008-11-25 11:40:42 -0800
commit33ed2975555999d457c203e60c2bd116e959116c (patch)
treebf8e45c6de8ec54f669378b66928f8be212b9296 /usb.current
parent434493e2e72fcb05836718522667210ceb7f21a0 (diff)
downloadpatches-33ed2975555999d457c203e60c2bd116e959116c.tar.gz
more usb patches
and 2 staging ones also
Diffstat (limited to 'usb.current')
-rw-r--r--usb.current/usb-fsl_qe_udc-report-disconnect-before-unbinding.patch63
-rw-r--r--usb.current/usb-fsl_usb2_udc-report-disconnect-before-unbinding.patch62
-rw-r--r--usb.current/usb-storage-unusual_devs-entry-for-mio-c520-gps.patch44
-rw-r--r--usb.current/usb-usb-storage-unusual_devs-entry-for-nikon-d2h.patch36
4 files changed, 205 insertions, 0 deletions
diff --git a/usb.current/usb-fsl_qe_udc-report-disconnect-before-unbinding.patch b/usb.current/usb-fsl_qe_udc-report-disconnect-before-unbinding.patch
new file mode 100644
index 00000000000000..80d67276bebfa7
--- /dev/null
+++ b/usb.current/usb-fsl_qe_udc-report-disconnect-before-unbinding.patch
@@ -0,0 +1,63 @@
+From avorontsov@ru.mvista.com Tue Nov 25 10:56:03 2008
+From: Anton Vorontsov <avorontsov@ru.mvista.com>
+Date: Thu, 13 Nov 2008 14:57:20 +0300
+Subject: USB: fsl_qe_udc: Report disconnect before unbinding
+To: David Brownell <dbrownell@users.sourceforge.net>
+Cc: Greg Kroah-Hartman <greg@kroah.com>, Li Yang <leoli@freescale.com>, Alan Stern <stern@rowland.harvard.edu>, linux-usb@vger.kernel.org, linuxppc-dev@ozlabs.org
+Message-ID: <20081113115720.GA28276@oksana.dev.rtsoft.ru>
+
+From: Anton Vorontsov <avorontsov@ru.mvista.com>
+
+Gadgets disable endpoints in their disconnect callbacks, so
+we must call disconnect before unbinding. This also fixes
+muram memory leak, since we free muram in the qe_ep_disable().
+
+But mainly the patch fixes following badness:
+
+root@b1:~# insmod fsl_qe_udc.ko
+fsl_qe_udc: Freescale QE/CPM USB Device Controller driver, 1.0
+fsl_qe_udc e01006c0.usb: QE USB controller initialized as device
+root@b1:~# insmod g_ether.ko
+g_ether gadget: using random self ethernet address
+g_ether gadget: using random host ethernet address
+usb0: MAC be:2d:3c:fa:be:f0
+usb0: HOST MAC 62:b8:6a:df:38:66
+g_ether gadget: Ethernet Gadget, version: Memorial Day 2008
+g_ether gadget: g_ether ready
+fsl_qe_udc e01006c0.usb: fsl_qe_udc bind to driver g_ether
+g_ether gadget: high speed config #1: CDC Ethernet (ECM)
+root@b1:~# rmmod g_ether.ko
+------------[ cut here ]------------
+Badness at drivers/usb/gadget/composite.c:871
+[...]
+NIP [d10c1374] composite_unbind+0x24/0x15c [g_ether]
+LR [d10a82f4] usb_gadget_unregister_driver+0x128/0x168 [fsl_qe_udc]
+Call Trace:
+[cfb93e80] [cfb1f3a0] 0xcfb1f3a0 (unreliable)
+[cfb93eb0] [d10a82f4] usb_gadget_unregister_driver+0x128/0x168 [fsl_qe_udc]
+[cfb93ed0] [d10c2a3c] usb_composite_unregister+0x3c/0x4c [g_ether]
+[cfb93ee0] [c006bde0] sys_delete_module+0x130/0x19c
+[cfb93f40] [c00142d8] ret_from_syscall+0x0/0x38
+[...]
+fsl_qe_udc e01006c0.usb: unregistered gadget driver 'g_ether'
+
+Signed-off-by: Anton Vorontsov <avorontsov@ru.mvista.com>
+Acked-by: David Brownell <dbrownell@users.sourceforge.net>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/usb/gadget/fsl_qe_udc.c | 3 +++
+ 1 file changed, 3 insertions(+)
+
+--- a/drivers/usb/gadget/fsl_qe_udc.c
++++ b/drivers/usb/gadget/fsl_qe_udc.c
+@@ -2363,6 +2363,9 @@ int usb_gadget_unregister_driver(struct
+ nuke(loop_ep, -ESHUTDOWN);
+ spin_unlock_irqrestore(&udc_controller->lock, flags);
+
++ /* report disconnect; the controller is already quiesced */
++ driver->disconnect(&udc_controller->gadget);
++
+ /* unbind gadget and unhook driver. */
+ driver->unbind(&udc_controller->gadget);
+ udc_controller->gadget.dev.driver = NULL;
diff --git a/usb.current/usb-fsl_usb2_udc-report-disconnect-before-unbinding.patch b/usb.current/usb-fsl_usb2_udc-report-disconnect-before-unbinding.patch
new file mode 100644
index 00000000000000..c5f6acb0119973
--- /dev/null
+++ b/usb.current/usb-fsl_usb2_udc-report-disconnect-before-unbinding.patch
@@ -0,0 +1,62 @@
+From avorontsov@ru.mvista.com Tue Nov 25 10:56:48 2008
+From: Anton Vorontsov <avorontsov@ru.mvista.com>
+Date: Thu, 13 Nov 2008 15:00:46 +0300
+Subject: USB: fsl_usb2_udc: Report disconnect before unbinding
+To: David Brownell <dbrownell@users.sourceforge.net>
+Cc: Greg Kroah-Hartman <greg@kroah.com>, Li Yang <leoli@freescale.com>, Alan Stern <stern@rowland.harvard.edu>, linux-usb@vger.kernel.org, linuxppc-dev@ozlabs.org
+Message-ID: <20081113120046.GA29942@oksana.dev.rtsoft.ru>
+Content-Disposition: inline
+
+From: Anton Vorontsov <avorontsov@ru.mvista.com>
+
+Gadgets disable endpoints in their disconnect callbacks, so
+we must call disconnect before unbinding.
+
+The patch fixes following badness:
+
+root@b1:~# insmod fsl_usb2_udc.ko
+Freescale High-Speed USB SOC Device Controller driver (Apr 20, 2007)
+root@b1:~# insmod g_ether.ko
+g_ether gadget: using random self ethernet address
+g_ether gadget: using random host ethernet address
+usb0: MAC 26:07:ba:c0:44:33
+usb0: HOST MAC 96:81:0c:05:4d:e3
+g_ether gadget: Ethernet Gadget, version: Memorial Day 2008
+g_ether gadget: g_ether ready
+fsl-usb2-udc: bind to driver g_ether
+g_ether gadget: high speed config #1: CDC Ethernet (ECM)
+root@b1:~# rmmod g_ether.ko
+------------[ cut here ]------------
+Badness at drivers/usb/gadget/composite.c:871
+[...]
+NIP [e10c3454] composite_unbind+0x24/0x15c [g_ether]
+LR [e10aa454] usb_gadget_unregister_driver+0x13c/0x164 [fsl_usb2_udc]
+Call Trace:
+[df145e80] [ffffff94] 0xffffff94 (unreliable)
+[df145eb0] [e10aa454] usb_gadget_unregister_driver+0x13c/0x164 [fsl_usb2_udc]
+[df145ed0] [e10c4c40] usb_composite_unregister+0x3c/0x4c [g_ether]
+[df145ee0] [c006bcc0] sys_delete_module+0x130/0x19c
+[df145f40] [c00142d8] ret_from_syscall+0x0/0x38
+[...]
+unregistered gadget driver 'g_ether'
+
+Signed-off-by: Anton Vorontsov <avorontsov@ru.mvista.com>
+Acked-by: David Brownell <dbrownell@users.sourceforge.net>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/usb/gadget/fsl_usb2_udc.c | 3 +++
+ 1 file changed, 3 insertions(+)
+
+--- a/drivers/usb/gadget/fsl_usb2_udc.c
++++ b/drivers/usb/gadget/fsl_usb2_udc.c
+@@ -1836,6 +1836,9 @@ int usb_gadget_unregister_driver(struct
+ nuke(loop_ep, -ESHUTDOWN);
+ spin_unlock_irqrestore(&udc_controller->lock, flags);
+
++ /* report disconnect; the controller is already quiesced */
++ driver->disconnect(&udc_controller->gadget);
++
+ /* unbind gadget and unhook driver. */
+ driver->unbind(&udc_controller->gadget);
+ udc_controller->gadget.dev.driver = NULL;
diff --git a/usb.current/usb-storage-unusual_devs-entry-for-mio-c520-gps.patch b/usb.current/usb-storage-unusual_devs-entry-for-mio-c520-gps.patch
new file mode 100644
index 00000000000000..37d720d9ba74a1
--- /dev/null
+++ b/usb.current/usb-storage-unusual_devs-entry-for-mio-c520-gps.patch
@@ -0,0 +1,44 @@
+From stern@rowland.harvard.edu Tue Nov 25 11:05:48 2008
+From: Alan Stern <stern@rowland.harvard.edu>
+Date: Fri, 21 Nov 2008 16:15:12 -0500 (EST)
+Subject: USB: storage: unusual_devs entry for Mio C520-GPS
+To: Greg KH <greg@kroah.com>, Phil Dibowitz <phil@ipom.com>
+Cc: Tamas Kerecsen <kerecsen@bigfoot.com>, USB Storage list <usb-storage@lists.one-eyed-alien.net>
+Message-ID: <Pine.LNX.4.44L0.0811211612160.2376-100000@iolanthe.rowland.org>
+
+
+This patch (as1176) adds an unusual_devs entry for the Mio C520 GPS
+unit. Other devices also based on the Mitac hardware use the same USB
+interface firmware, so the Vendor and Product names are generalized.
+
+This fixes Bugzilla #11583.
+
+Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
+Tested-by: Tamas Kerecsen <kerecsen@bigfoot.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/usb/storage/unusual_devs.h | 12 ++++++++++++
+ 1 file changed, 12 insertions(+)
+
+--- a/drivers/usb/storage/unusual_devs.h
++++ b/drivers/usb/storage/unusual_devs.h
+@@ -318,6 +318,18 @@ UNUSUAL_DEV( 0x045a, 0x5210, 0x0101, 0x
+ US_SC_SCSI, US_PR_KARMA, rio_karma_init, 0),
+ #endif
+
++/* Reported by Tamas Kerecsen <kerecsen@bigfoot.com>
++ * Obviously the PROM has not been customized by the VAR;
++ * the Vendor and Product string descriptors are:
++ * Generic Mass Storage (PROTOTYPE--Remember to change idVendor)
++ * Generic Manufacturer (PROTOTYPE--Remember to change idVendor)
++ */
++UNUSUAL_DEV( 0x045e, 0xffff, 0x0000, 0x0000,
++ "Mitac",
++ "GPS",
++ US_SC_DEVICE, US_PR_DEVICE, NULL,
++ US_FL_MAX_SECTORS_64 ),
++
+ /*
+ * This virtual floppy is found in Sun equipment (x4600, x4200m2, etc.)
+ * Reported by Pete Zaitcev <zaitcev@redhat.com>
diff --git a/usb.current/usb-usb-storage-unusual_devs-entry-for-nikon-d2h.patch b/usb.current/usb-usb-storage-unusual_devs-entry-for-nikon-d2h.patch
new file mode 100644
index 00000000000000..e693360828932b
--- /dev/null
+++ b/usb.current/usb-usb-storage-unusual_devs-entry-for-nikon-d2h.patch
@@ -0,0 +1,36 @@
+From stern@rowland.harvard.edu Tue Nov 25 11:11:27 2008
+From: Tobias Kunze Brise�o <t@fictive.com>,
+Date: Mon, 24 Nov 2008 11:28:31 -0500 (EST)
+Subject: USB: usb-storage: unusual_devs entry for Nikon D2H
+To: Greg KH <greg@kroah.com>, Phil Dibowitz <phil@ipom.com>
+Cc: Tobias Kunze Brise�o <t@fictive.com>, USB Storage list <usb-storage@lists.one-eyed-alien.net>
+Message-ID: <Pine.LNX.4.44L0.0811241125420.2851-100000@iolanthe.rowland.org>
+
+From: Tobias Kunze Brise�o <t@fictive.com>,
+
+This patch adds an unusual_devs entry for the Nikon D2H camera.
+
+From: Tobias Kunze Brise�o <t@fictive.com>,
+Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/usb/storage/unusual_devs.h | 7 +++++++
+ 1 file changed, 7 insertions(+)
+
+--- a/drivers/usb/storage/unusual_devs.h
++++ b/drivers/usb/storage/unusual_devs.h
+@@ -389,6 +389,13 @@ UNUSUAL_DEV( 0x04b0, 0x0401, 0x0200, 0x
+ US_SC_DEVICE, US_PR_DEVICE, NULL,
+ US_FL_FIX_CAPACITY),
+
++/* Reported by Tobias Kunze Briseno <t-linux@fictive.com> */
++UNUSUAL_DEV( 0x04b0, 0x0403, 0x0200, 0x0200,
++ "NIKON",
++ "NIKON DSC D2H",
++ US_SC_DEVICE, US_PR_DEVICE, NULL,
++ US_FL_FIX_CAPACITY),
++
+ /* Reported by Milinevsky Dmitry <niam.niam@gmail.com> */
+ UNUSUAL_DEV( 0x04b0, 0x0409, 0x0100, 0x0100,
+ "NIKON",