compat-wireless: backport tty termios changes
authorLuis R. Rodriguez <mcgrof@frijolero.org>
Tue, 24 Jul 2012 21:36:37 +0000 (14:36 -0700)
committerLuis R. Rodriguez <mcgrof@frijolero.org>
Tue, 24 Jul 2012 21:36:37 +0000 (14:36 -0700)
This patch requires a manual backport:

commit adc8d746caa67fff4b53ba3e5163a6cbacc3b523
Author: Alan Cox <alan@linux.intel.com>
Date:   Sat Jul 14 15:31:47 2012 +0100

    tty: move the termios object into the tty

    This will let us sort out a whole pile of tty related races. The
    alternative would be to keep points and refcount the termios objects.
    However
    1. They are tiny anyway
    2. Many devices don't use the stored copies
    3. We can remove a pty special case

Signed-off-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
We cannot use compat.git for this given that the assignment
was not done through a static inline helper.

Signed-off-by: Luis R. Rodriguez <mcgrof@frijolero.org>
patches/63-tty-termios.patch [new file with mode: 0644]

diff --git a/patches/63-tty-termios.patch b/patches/63-tty-termios.patch
new file mode 100644 (file)
index 0000000..dd7c300
--- /dev/null
@@ -0,0 +1,35 @@
+This patch requires a manual backport:
+
+commit adc8d746caa67fff4b53ba3e5163a6cbacc3b523
+Author: Alan Cox <alan@linux.intel.com>
+Date:   Sat Jul 14 15:31:47 2012 +0100
+
+    tty: move the termios object into the tty
+    
+    This will let us sort out a whole pile of tty related races. The
+    alternative would be to keep points and refcount the termios objects.
+    However
+    1. They are tiny anyway
+    2. Many devices don't use the stored copies
+    3. We can remove a pty special case
+    
+    Signed-off-by: Alan Cox <alan@linux.intel.com>
+    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+We cannot use compat.git for this given that the assignment
+was not done through a static inline helper.
+
+--- a/drivers/bluetooth/hci_ath.c
++++ b/drivers/bluetooth/hci_ath.c
+@@ -58,7 +58,11 @@ static int ath_wakeup_ar3k(struct tty_st
+               return status;
+       /* Disable Automatic RTSCTS */
++#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,6,0))
+       ktermios = tty->termios;
++#else
++      memcpy(&ktermios, tty->termios, sizeof(ktermios));
++#endif
+       ktermios.c_cflag &= ~CRTSCTS;
+       tty_set_termios(tty, &ktermios);