summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMiguel Angel Alvarez <ma.alvarez@ziv.es>2006-12-14 19:49:35 +0100
committerGreg Kroah-Hartman <gregkh@suse.de>2007-01-05 12:19:08 -0800
commit8c1527132c25512563b197b35453c7da22b4d699 (patch)
tree53e90cf5ca1056df90e4d99e1a9601a30c490e62
parent25c77b329467d563ec1fa5c3efab0b13996ce810 (diff)
downloadlinux-stable-8c1527132c25512563b197b35453c7da22b4d699.tar.gz
linux-stable-8c1527132c25512563b197b35453c7da22b4d699.tar.bz2
linux-stable-8c1527132c25512563b197b35453c7da22b4d699.zip
USB: fix interaction between different interfaces in an "Option" usb device
Just the serial port in the first interface should control DTR and RTS lines. This way, the closing of the rest of the ports does not produce a= hangup in the communication. Signed-off-by: Miguel Angel Alvarez <ma.alvarez@ziv.es> Signed-off-by: Matthias Urlichs <matthias@urlichs.de> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-rw-r--r--drivers/usb/serial/option.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/usb/serial/option.c b/drivers/usb/serial/option.c
index 819266b7e2f8..5ca04e82ea19 100644
--- a/drivers/usb/serial/option.c
+++ b/drivers/usb/serial/option.c
@@ -625,6 +625,9 @@ static int option_send_setup(struct usb_serial_port *port)
dbg("%s", __FUNCTION__);
+ if (port->number != 0)
+ return 0;
+
portdata = usb_get_serial_port_data(port);
if (port->tty) {