summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJim Paris <jim@jtan.com>2014-10-30 11:04:47 -0400
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2014-11-03 15:26:15 -0800
commit24cb4502c97b0c9bed90aae0225adb92088783d3 (patch)
treed5571a7923e2f7559d0456eaa3a9cf27f983af01
parentcf84a691a61606a2e7269907d3727e2d9fa148ee (diff)
downloadlinux-24cb4502c97b0c9bed90aae0225adb92088783d3.tar.bz2
cdc-acm: ensure that termios get set when the port is activated
The driver wasn't properly configuring the hardware for the current termios settings under all conditions. Ensure that termios are written to the device when the port is activated. Signed-off-by: Jim Paris <jim@jtan.com> Reviewed-by: Johan Hovold <johan@kernel.org> Acked-by: Oliver Neukum <oneukum@suse.de> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--drivers/usb/class/cdc-acm.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/usb/class/cdc-acm.c b/drivers/usb/class/cdc-acm.c
index 959343b891c7..6771f884cb82 100644
--- a/drivers/usb/class/cdc-acm.c
+++ b/drivers/usb/class/cdc-acm.c
@@ -60,6 +60,9 @@ static struct acm *acm_table[ACM_TTY_MINORS];
static DEFINE_MUTEX(acm_table_lock);
+static void acm_tty_set_termios(struct tty_struct *tty,
+ struct ktermios *termios_old);
+
/*
* acm_table accessors
*/
@@ -554,6 +557,8 @@ static int acm_port_activate(struct tty_port *port, struct tty_struct *tty)
goto error_submit_urb;
}
+ acm_tty_set_termios(tty, NULL);
+
/*
* Unthrottle device in case the TTY was closed while throttled.
*/