]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
3.10-stable patches
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 9 Dec 2013 20:10:38 +0000 (12:10 -0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 9 Dec 2013 20:10:38 +0000 (12:10 -0800)
added patches:
usb-pl2303-fixed-handling-of-cs5-setting.patch

queue-3.10/series
queue-3.10/usb-pl2303-fixed-handling-of-cs5-setting.patch [new file with mode: 0644]

index 78827546e1b5379532f22fa6d2804aabb00aebe0..f56d2fbfd9eb69b31f0f0ce47d1b261c4ffacbe5 100644 (file)
@@ -42,3 +42,4 @@ input-allow-deselecting-serio-drivers-even-without-config_expert.patch
 input-mousedev-allow-disabling-even-without-config_expert.patch
 mei-me-add-lynx-point-wellsburg-work-station-device-id.patch
 mei-add-9-series-pch-mei-device-ids.patch
+usb-pl2303-fixed-handling-of-cs5-setting.patch
diff --git a/queue-3.10/usb-pl2303-fixed-handling-of-cs5-setting.patch b/queue-3.10/usb-pl2303-fixed-handling-of-cs5-setting.patch
new file mode 100644 (file)
index 0000000..30491b0
--- /dev/null
@@ -0,0 +1,67 @@
+From a313249937820f8b1996133fc285efbd6aad2c5b Mon Sep 17 00:00:00 2001
+From: Colin Leitner <colin.leitner@googlemail.com>
+Date: Mon, 4 Nov 2013 19:40:43 +0100
+Subject: USB: pl2303: fixed handling of CS5 setting
+
+From: Colin Leitner <colin.leitner@googlemail.com>
+
+commit a313249937820f8b1996133fc285efbd6aad2c5b upstream.
+
+This patch fixes the CS5 setting on the PL2303 USB-to-serial devices. CS5 has a
+value of 0 and the CSIZE setting has been skipped altogether by the enclosing
+if. Tested on 3.11.6 and the scope shows the correct output after the fix has
+been applied.
+
+Tagged to be added to stable, because it fixes a user visible driver bug and is
+simple enough to backport easily.
+
+Signed-off-by: Colin Leitner <colin.leitner@gmail.com>
+Signed-off-by: Johan Hovold <jhovold@gmail.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ drivers/usb/serial/pl2303.c |   32 +++++++++++++++-----------------
+ 1 file changed, 15 insertions(+), 17 deletions(-)
+
+--- a/drivers/usb/serial/pl2303.c
++++ b/drivers/usb/serial/pl2303.c
+@@ -304,24 +304,22 @@ static void pl2303_set_termios(struct tt
+       dev_dbg(&port->dev, "0xa1:0x21:0:0  %d - %x %x %x %x %x %x %x\n", i,
+           buf[0], buf[1], buf[2], buf[3], buf[4], buf[5], buf[6]);
+-      if (cflag & CSIZE) {
+-              switch (cflag & CSIZE) {
+-              case CS5:
+-                      buf[6] = 5;
+-                      break;
+-              case CS6:
+-                      buf[6] = 6;
+-                      break;
+-              case CS7:
+-                      buf[6] = 7;
+-                      break;
+-              default:
+-              case CS8:
+-                      buf[6] = 8;
+-                      break;
+-              }
+-              dev_dbg(&port->dev, "data bits = %d\n", buf[6]);
++      switch (cflag & CSIZE) {
++      case CS5:
++              buf[6] = 5;
++              break;
++      case CS6:
++              buf[6] = 6;
++              break;
++      case CS7:
++              buf[6] = 7;
++              break;
++      default:
++      case CS8:
++              buf[6] = 8;
++              break;
+       }
++      dev_dbg(&port->dev, "data bits = %d\n", buf[6]);
+       /* For reference buf[0]:buf[3] baud rate value */
+       /* NOTE: Only the values defined in baud_sup are supported !