aboutsummaryrefslogtreecommitdiffstats
path: root/usb
diff options
context:
space:
mode:
authorGreg Kroah-Hartman <gregkh@suse.de>2006-01-19 17:33:49 -0800
committerGreg Kroah-Hartman <gregkh@suse.de>2006-01-19 17:33:49 -0800
commit358c5e469c3bb46cab6536de47f6795bc07a1712 (patch)
treeb90bf82c9e47309a37d5bf027d87415e08374af8 /usb
parent8489d6d662aa163a88869780af7e4d4dd05c8edd (diff)
downloadpatches-358c5e469c3bb46cab6536de47f6795bc07a1712.tar.gz
new patches added
Diffstat (limited to 'usb')
-rw-r--r--usb/usb-add-new-pl2303-device-ids.patch35
-rw-r--r--usb/usb-core-and-hcds-don-t-put_device-while-atomic.patch160
-rw-r--r--usb/usb-cp2101-add-new-device-ids.patch48
-rw-r--r--usb/usb-net2280-warning-fix.patch32
4 files changed, 275 insertions, 0 deletions
diff --git a/usb/usb-add-new-pl2303-device-ids.patch b/usb/usb-add-new-pl2303-device-ids.patch
new file mode 100644
index 0000000000000..316791d6f1065
--- /dev/null
+++ b/usb/usb-add-new-pl2303-device-ids.patch
@@ -0,0 +1,35 @@
+From denis.monterrat@sagem.com Thu Jan 19 05:52:48 2006
+From: Denis MONTERRAT <denis.monterrat@sagem.com>
+Subject: USB: add new pl2303 device ids
+Date: Thu, 19 Jan 2006 14:52:38 +0100
+To: greg@kroah.com
+Cc:
+Message-ID: <OF3A5B0393.4D765429-ON412570FB.004C19A4@sagem.com>
+
+Signed-off-by: FALIPOU F Developer <fred.falipou@free.fr>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/usb/serial/pl2303.c | 1 +
+ drivers/usb/serial/pl2303.h | 3 +++
+ 2 files changed, 4 insertions(+)
+
+--- gregkh-2.6.orig/drivers/usb/serial/pl2303.c
++++ gregkh-2.6/drivers/usb/serial/pl2303.c
+@@ -75,6 +75,7 @@ static struct usb_device_id id_table []
+ { USB_DEVICE(SYNTECH_VENDOR_ID, SYNTECH_PRODUCT_ID) },
+ { USB_DEVICE(NOKIA_CA42_VENDOR_ID, NOKIA_CA42_PRODUCT_ID ) },
+ { USB_DEVICE(CA_42_CA42_VENDOR_ID, CA_42_CA42_PRODUCT_ID ) },
++ { USB_DEVICE(SAGEM_VENDOR_ID, SAGEM_PRODUCT_ID) },
+ { } /* Terminating entry */
+ };
+
+--- gregkh-2.6.orig/drivers/usb/serial/pl2303.h
++++ gregkh-2.6/drivers/usb/serial/pl2303.h
+@@ -68,3 +68,6 @@
+ /* CA-42 CLONE Cable www.ca-42.com chipset: Prolific Technology Inc */
+ #define CA_42_CA42_VENDOR_ID 0x10b5
+ #define CA_42_CA42_PRODUCT_ID 0xac70
++
++#define SAGEM_VENDOR_ID 0x079b
++#define SAGEM_PRODUCT_ID 0x0027
diff --git a/usb/usb-core-and-hcds-don-t-put_device-while-atomic.patch b/usb/usb-core-and-hcds-don-t-put_device-while-atomic.patch
new file mode 100644
index 0000000000000..2951a78c6b4b1
--- /dev/null
+++ b/usb/usb-core-and-hcds-don-t-put_device-while-atomic.patch
@@ -0,0 +1,160 @@
+From stern@rowland.harvard.edu Thu Jan 19 07:46:36 2006
+Date: Thu, 19 Jan 2006 10:46:27 -0500 (EST)
+From: Alan Stern <stern@rowland.harvard.edu>
+To: Greg KH <greg@kroah.com>
+cc: David Brownell <david-b@pacbell.net>, Olav Kongas <ok@artecdesign.ee>
+Subject: [PATCH] USB core and HCDs: don't put_device while atomic
+Message-ID: <Pine.LNX.4.44L0.0601191036380.4622-100000@iolanthe.rowland.org>
+
+This patch (as640) removes several put_device and the corresponding
+get_device calls from the USB core and HCDs. Some of the puts were done
+in atomic contexts, and none of them are needed since the core now
+guarantees that every endpoint will be disabled and every URB completed
+before a USB device is released.
+
+
+Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
+Acked-by: David Brownell <david-b@pacbell.net>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/usb/core/hcd.c | 2 --
+ drivers/usb/host/ehci-mem.c | 1 -
+ drivers/usb/host/ehci-q.c | 2 +-
+ drivers/usb/host/ehci-sched.c | 6 ++----
+ drivers/usb/host/isp116x-hcd.c | 3 +--
+ drivers/usb/host/sl811-hcd.c | 3 +--
+ drivers/usb/host/uhci-q.c | 2 --
+ 7 files changed, 5 insertions(+), 14 deletions(-)
+
+--- gregkh-2.6.orig/drivers/usb/host/uhci-q.c
++++ gregkh-2.6/drivers/usb/host/uhci-q.c
+@@ -179,7 +179,6 @@ static struct uhci_qh *uhci_alloc_qh(str
+ qh->hep = hep;
+ qh->udev = udev;
+ hep->hcpriv = qh;
+- usb_get_dev(udev);
+
+ } else { /* Skeleton QH */
+ qh->state = QH_STATE_ACTIVE;
+@@ -197,7 +196,6 @@ static void uhci_free_qh(struct uhci_hcd
+ list_del(&qh->node);
+ if (qh->udev) {
+ qh->hep->hcpriv = NULL;
+- usb_put_dev(qh->udev);
+ uhci_free_td(uhci, qh->dummy_td);
+ }
+ dma_pool_free(uhci->qh_pool, qh, qh->dma_handle);
+--- gregkh-2.6.orig/drivers/usb/core/hcd.c
++++ gregkh-2.6/drivers/usb/core/hcd.c
+@@ -1091,7 +1091,6 @@ static void urb_unlink (struct urb *urb)
+ spin_lock_irqsave (&hcd_data_lock, flags);
+ list_del_init (&urb->urb_list);
+ spin_unlock_irqrestore (&hcd_data_lock, flags);
+- usb_put_dev (urb->dev);
+ }
+
+
+@@ -1131,7 +1130,6 @@ static int hcd_submit_urb (struct urb *u
+ case HC_STATE_RUNNING:
+ case HC_STATE_RESUMING:
+ doit:
+- usb_get_dev (urb->dev);
+ list_add_tail (&urb->urb_list, &ep->urb_list);
+ status = 0;
+ break;
+--- gregkh-2.6.orig/drivers/usb/host/isp116x-hcd.c
++++ gregkh-2.6/drivers/usb/host/isp116x-hcd.c
+@@ -724,7 +724,7 @@ static int isp116x_urb_enqueue(struct us
+ ep = hep->hcpriv;
+ else {
+ INIT_LIST_HEAD(&ep->schedule);
+- ep->udev = usb_get_dev(udev);
++ ep->udev = udev;
+ ep->epnum = epnum;
+ ep->maxpacket = usb_maxpacket(udev, urb->pipe, is_out);
+ usb_settoggle(udev, epnum, is_out, 0);
+@@ -891,7 +891,6 @@ static void isp116x_endpoint_disable(str
+ if (!list_empty(&hep->urb_list))
+ WARN("ep %p not empty?\n", ep);
+
+- usb_put_dev(ep->udev);
+ kfree(ep);
+ hep->hcpriv = NULL;
+ }
+--- gregkh-2.6.orig/drivers/usb/host/ehci-mem.c
++++ gregkh-2.6/drivers/usb/host/ehci-mem.c
+@@ -75,7 +75,6 @@ static void qh_destroy (struct kref *kre
+ }
+ if (qh->dummy)
+ ehci_qtd_free (ehci, qh->dummy);
+- usb_put_dev (qh->dev);
+ dma_pool_free (ehci->qh_pool, qh, qh->qh_dma);
+ }
+
+--- gregkh-2.6.orig/drivers/usb/host/ehci-q.c
++++ gregkh-2.6/drivers/usb/host/ehci-q.c
+@@ -702,7 +702,7 @@ qh_make (
+ }
+
+ /* support for tt scheduling, and access to toggles */
+- qh->dev = usb_get_dev (urb->dev);
++ qh->dev = urb->dev;
+
+ /* using TT? */
+ switch (urb->dev->speed) {
+--- gregkh-2.6.orig/drivers/usb/host/ehci-sched.c
++++ gregkh-2.6/drivers/usb/host/ehci-sched.c
+@@ -1397,7 +1397,7 @@ itd_complete (
+ */
+
+ /* give urb back to the driver ... can be out-of-order */
+- dev = usb_get_dev (urb->dev);
++ dev = urb->dev;
+ ehci_urb_done (ehci, urb, regs);
+ urb = NULL;
+
+@@ -1416,7 +1416,6 @@ itd_complete (
+ (stream->bEndpointAddress & USB_DIR_IN) ? "in" : "out");
+ }
+ iso_stream_put (ehci, stream);
+- usb_put_dev (dev);
+
+ return 1;
+ }
+@@ -1763,7 +1762,7 @@ sitd_complete (
+ */
+
+ /* give urb back to the driver */
+- dev = usb_get_dev (urb->dev);
++ dev = urb->dev;
+ ehci_urb_done (ehci, urb, regs);
+ urb = NULL;
+
+@@ -1782,7 +1781,6 @@ sitd_complete (
+ (stream->bEndpointAddress & USB_DIR_IN) ? "in" : "out");
+ }
+ iso_stream_put (ehci, stream);
+- usb_put_dev (dev);
+
+ return 1;
+ }
+--- gregkh-2.6.orig/drivers/usb/host/sl811-hcd.c
++++ gregkh-2.6/drivers/usb/host/sl811-hcd.c
+@@ -853,7 +853,7 @@ static int sl811h_urb_enqueue(
+
+ } else {
+ INIT_LIST_HEAD(&ep->schedule);
+- ep->udev = usb_get_dev(udev);
++ ep->udev = udev;
+ ep->epnum = epnum;
+ ep->maxpacket = usb_maxpacket(udev, urb->pipe, is_out);
+ ep->defctrl = SL11H_HCTLMASK_ARM | SL11H_HCTLMASK_ENABLE;
+@@ -1052,7 +1052,6 @@ sl811h_endpoint_disable(struct usb_hcd *
+ if (!list_empty(&hep->urb_list))
+ WARN("ep %p not empty?\n", ep);
+
+- usb_put_dev(ep->udev);
+ kfree(ep);
+ hep->hcpriv = NULL;
+ }
diff --git a/usb/usb-cp2101-add-new-device-ids.patch b/usb/usb-cp2101-add-new-device-ids.patch
new file mode 100644
index 0000000000000..d1140341939d8
--- /dev/null
+++ b/usb/usb-cp2101-add-new-device-ids.patch
@@ -0,0 +1,48 @@
+From craig@microtron.org.uk Thu Jan 19 16:05:09 2006
+From: Craig Shelley <craig@microtron.org.uk>
+Subject: USB: cp2101 Add new device IDs
+To: Greg KH <greg@kroah.com>
+Date: Fri, 20 Jan 2006 00:06:19 +0000
+Message-Id: <1137715579.14806.70.camel@teratron.lan.etheus.net>
+
+The attached patch adds four new device IDs for the CP2101 driver.
+Also 3 tab characters have been removed from device ID table.
+
+Signed-off-by: Craig Shelley <craig@microtron.org.uk>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/usb/serial/cp2101.c | 14 +++++++++-----
+ 1 file changed, 9 insertions(+), 5 deletions(-)
+
+--- gregkh-2.6.orig/drivers/usb/serial/cp2101.c
++++ gregkh-2.6/drivers/usb/serial/cp2101.c
+@@ -32,7 +32,7 @@
+ /*
+ * Version Information
+ */
+-#define DRIVER_VERSION "v0.05"
++#define DRIVER_VERSION "v0.06"
+ #define DRIVER_DESC "Silicon Labs CP2101/CP2102 RS232 serial adaptor driver"
+
+ /*
+@@ -55,11 +55,15 @@ static int debug;
+
+ static struct usb_device_id id_table [] = {
+ { USB_DEVICE(0x0FCF, 0x1003) }, /* Dynastream ANT development board */
+- { USB_DEVICE(0x10C4, 0xEA60) }, /* Silicon Labs factory default */
+- { USB_DEVICE(0x10C4, 0x80CA) }, /* Degree Controls Inc */
+- { USB_DEVICE(0x10C4, 0x80F6) }, /* Suunto sports instrument */
+ { USB_DEVICE(0x10A6, 0xAA26) }, /* Knock-off DCU-11 cable */
+- { USB_DEVICE(0x10AB, 0x10C5) }, /* Siemens MC60 Cable */
++ { USB_DEVICE(0x10AB, 0x10C5) }, /* Siemens MC60 Cable */
++ { USB_DEVICE(0x10B5, 0xAC70) }, /* Nokia CA-42 USB */
++ { USB_DEVICE(0x10C4, 0x807A) }, /* Crumb128 board */
++ { USB_DEVICE(0x10C4, 0x80CA) }, /* Degree Controls Inc */
++ { USB_DEVICE(0x10C4, 0x80F6) }, /* Suunto sports instrument */
++ { USB_DEVICE(0x10C4, 0x813D) }, /* Burnside Telecom Deskmobile */
++ { USB_DEVICE(0x10C4, 0x815E) }, /* Helicomm IP-Link 1220-DVM */
++ { USB_DEVICE(0x10C4, 0xEA60) }, /* Silicon Labs factory default */
+ { USB_DEVICE(0x16D6, 0x0001) }, /* Jablotron serial interface */
+ { } /* Terminating Entry */
+ };
diff --git a/usb/usb-net2280-warning-fix.patch b/usb/usb-net2280-warning-fix.patch
new file mode 100644
index 0000000000000..9cd4eee18f456
--- /dev/null
+++ b/usb/usb-net2280-warning-fix.patch
@@ -0,0 +1,32 @@
+From akpm@osdl.org Wed Jan 18 23:55:24 2006
+Message-Id: <200601190755.k0J7tMAA027510@shell0.pdx.osdl.net>
+From: David Brownell <david-b@pacbell.net>
+Subject: USB: net2280 warning fix
+To: greg@kroah.com
+Cc: akpm@osdl.org, david-b@pacbell.net, dbrownell@users.sourceforge.net
+From: akpm@osdl.org
+Date: Wed, 18 Jan 2006 23:55:08 -0800
+
+
+From: David Brownell <david-b@pacbell.net>
+
+For some reason alpha doesn't include <linux/dma-mapping.h> where other
+architectures do; this makes net2280 include it explicitly.
+
+Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
+Signed-off-by: Andrew Morton <akpm@osdl.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+---
+ drivers/usb/gadget/net2280.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+--- gregkh-2.6.orig/drivers/usb/gadget/net2280.c
++++ gregkh-2.6/drivers/usb/gadget/net2280.c
+@@ -47,6 +47,7 @@
+ #include <linux/config.h>
+ #include <linux/module.h>
+ #include <linux/pci.h>
++#include <linux/dma-mapping.h>
+ #include <linux/kernel.h>
+ #include <linux/delay.h>
+ #include <linux/ioport.h>