]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
3.0-stable patches
authorGreg Kroah-Hartman <gregkh@suse.de>
Tue, 31 Jan 2012 00:52:06 +0000 (16:52 -0800)
committerGreg Kroah-Hartman <gregkh@suse.de>
Tue, 31 Jan 2012 00:52:06 +0000 (16:52 -0800)
added patches:
qcaux-add-more-pantech-uml190-and-uml290-ports.patch
usb-io_ti-make-edge_remove_sysfs_attrs-the-port_remove-method.patch

queue-3.0/qcaux-add-more-pantech-uml190-and-uml290-ports.patch [new file with mode: 0644]
queue-3.0/series
queue-3.0/usb-io_ti-make-edge_remove_sysfs_attrs-the-port_remove-method.patch [new file with mode: 0644]

diff --git a/queue-3.0/qcaux-add-more-pantech-uml190-and-uml290-ports.patch b/queue-3.0/qcaux-add-more-pantech-uml190-and-uml290-ports.patch
new file mode 100644 (file)
index 0000000..2658985
--- /dev/null
@@ -0,0 +1,41 @@
+From 074cc73506f529f39fef32ad1c9e1d4cdd8acf6c Mon Sep 17 00:00:00 2001
+From: Dan Williams <dcbw@redhat.com>
+Date: Tue, 24 Jan 2012 17:16:54 -0600
+Subject: qcaux: add more Pantech UML190 and UML290 ports
+
+From: Dan Williams <dcbw@redhat.com>
+
+commit 074cc73506f529f39fef32ad1c9e1d4cdd8acf6c upstream.
+
+More ports we now know how to talk to.
+
+Signed-off-by: Dan Williams <dcbw@redhat.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/usb/serial/qcaux.c |    7 ++++++-
+ 1 file changed, 6 insertions(+), 1 deletion(-)
+
+--- a/drivers/usb/serial/qcaux.c
++++ b/drivers/usb/serial/qcaux.c
+@@ -36,6 +36,7 @@
+ #define UTSTARCOM_PRODUCT_UM175_V1            0x3712
+ #define UTSTARCOM_PRODUCT_UM175_V2            0x3714
+ #define UTSTARCOM_PRODUCT_UM175_ALLTEL                0x3715
++#define PANTECH_PRODUCT_UML190_VZW            0x3716
+ #define PANTECH_PRODUCT_UML290_VZW            0x3718
+ /* CMOTECH devices */
+@@ -67,7 +68,11 @@ static struct usb_device_id id_table[] =
+       { USB_DEVICE_AND_INTERFACE_INFO(LG_VENDOR_ID, LG_PRODUCT_VX4400_6000, 0xff, 0xff, 0x00) },
+       { USB_DEVICE_AND_INTERFACE_INFO(SANYO_VENDOR_ID, SANYO_PRODUCT_KATANA_LX, 0xff, 0xff, 0x00) },
+       { USB_DEVICE_AND_INTERFACE_INFO(SAMSUNG_VENDOR_ID, SAMSUNG_PRODUCT_U520, 0xff, 0x00, 0x00) },
+-      { USB_DEVICE_AND_INTERFACE_INFO(UTSTARCOM_VENDOR_ID, PANTECH_PRODUCT_UML290_VZW, 0xff, 0xff, 0xff) },
++      { USB_DEVICE_AND_INTERFACE_INFO(UTSTARCOM_VENDOR_ID, PANTECH_PRODUCT_UML190_VZW, 0xff, 0xff, 0xff) },
++      { USB_DEVICE_AND_INTERFACE_INFO(UTSTARCOM_VENDOR_ID, PANTECH_PRODUCT_UML190_VZW, 0xff, 0xfe, 0xff) },
++      { USB_DEVICE_AND_INTERFACE_INFO(UTSTARCOM_VENDOR_ID, PANTECH_PRODUCT_UML290_VZW, 0xff, 0xfd, 0xff) },  /* NMEA */
++      { USB_DEVICE_AND_INTERFACE_INFO(UTSTARCOM_VENDOR_ID, PANTECH_PRODUCT_UML290_VZW, 0xff, 0xfe, 0xff) },  /* WMC */
++      { USB_DEVICE_AND_INTERFACE_INFO(UTSTARCOM_VENDOR_ID, PANTECH_PRODUCT_UML290_VZW, 0xff, 0xff, 0xff) },  /* DIAG */
+       { },
+ };
+ MODULE_DEVICE_TABLE(usb, id_table);
index e1cdd8ca280fe6c4d6148d35b50d6c8821e8c1d0..2815267d227c277f5b54f26916072daa644c2403 100644 (file)
@@ -30,3 +30,5 @@ usb-serial-ftdi-additional-ids.patch
 usb-ftdi_sio-add-more-identifiers.patch
 usb-cdc-wdm-updating-desc-length-must-be-protected-by-spin_lock.patch
 usb-cdc-wdm-use-two-mutexes-to-allow-simultaneous-read-and-write.patch
+qcaux-add-more-pantech-uml190-and-uml290-ports.patch
+usb-io_ti-make-edge_remove_sysfs_attrs-the-port_remove-method.patch
diff --git a/queue-3.0/usb-io_ti-make-edge_remove_sysfs_attrs-the-port_remove-method.patch b/queue-3.0/usb-io_ti-make-edge_remove_sysfs_attrs-the-port_remove-method.patch
new file mode 100644 (file)
index 0000000..2ff56df
--- /dev/null
@@ -0,0 +1,57 @@
+From 6d443d8499e4e59ffb949759cdded32730f8d2f6 Mon Sep 17 00:00:00 2001
+From: "Eric W. Biederman" <ebiederm@xmission.com>
+Date: Fri, 13 Jan 2012 21:32:06 -0800
+Subject: usb: io_ti: Make edge_remove_sysfs_attrs the port_remove method.
+
+From: "Eric W. Biederman" <ebiederm@xmission.com>
+
+commit 6d443d8499e4e59ffb949759cdded32730f8d2f6 upstream.
+
+Calling edge_remove_sysfs_attrs from edge_disconnect is too late
+as the device has already been removed from sysfs.
+
+Do the simple and obvious thing and make edge_remove_sysfs_attrs
+the port_remove method.
+
+Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
+Reported-by: Wolfgang Frisch <wfpub@roembden.net>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/usb/serial/io_ti.c |   10 ++--------
+ 1 file changed, 2 insertions(+), 8 deletions(-)
+
+--- a/drivers/usb/serial/io_ti.c
++++ b/drivers/usb/serial/io_ti.c
+@@ -2677,15 +2677,7 @@ cleanup:
+ static void edge_disconnect(struct usb_serial *serial)
+ {
+-      int i;
+-      struct edgeport_port *edge_port;
+-
+       dbg("%s", __func__);
+-
+-      for (i = 0; i < serial->num_ports; ++i) {
+-              edge_port = usb_get_serial_port_data(serial->port[i]);
+-              edge_remove_sysfs_attrs(edge_port->port);
+-      }
+ }
+ static void edge_release(struct usb_serial *serial)
+@@ -2764,6 +2756,7 @@ static struct usb_serial_driver edgeport
+       .disconnect             = edge_disconnect,
+       .release                = edge_release,
+       .port_probe             = edge_create_sysfs_attrs,
++      .port_remove            = edge_remove_sysfs_attrs,
+       .ioctl                  = edge_ioctl,
+       .set_termios            = edge_set_termios,
+       .tiocmget               = edge_tiocmget,
+@@ -2795,6 +2788,7 @@ static struct usb_serial_driver edgeport
+       .disconnect             = edge_disconnect,
+       .release                = edge_release,
+       .port_probe             = edge_create_sysfs_attrs,
++      .port_remove            = edge_remove_sysfs_attrs,
+       .ioctl                  = edge_ioctl,
+       .set_termios            = edge_set_termios,
+       .tiocmget               = edge_tiocmget,