summaryrefslogtreecommitdiffstats
path: root/drivers/usb/serial/metro-usb.c
diff options
context:
space:
mode:
authorJohan Hovold2013-03-21 12:37:40 +0100
committerGreg Kroah-Hartman2013-03-25 21:54:31 +0100
commit5813f281bba6603bed52d6005a9d6a9f23f5c061 (patch)
tree62b75f610dc100ece9e249f0f7a07f59f22bdff0 /drivers/usb/serial/metro-usb.c
parentUSB: kl5kusb105: always disable uart on close (diff)
downloadkernel-qcow2-linux-5813f281bba6603bed52d6005a9d6a9f23f5c061.tar.gz
kernel-qcow2-linux-5813f281bba6603bed52d6005a9d6a9f23f5c061.tar.xz
kernel-qcow2-linux-5813f281bba6603bed52d6005a9d6a9f23f5c061.zip
USB: metro-usb: always disable uart on close
Always try to disable the uart on close. Since the switch to tty ports, close will be called as part of shutdown before disconnect returns. Hence there is no need to check the disconnected flag, and we can put devices in disabled states also on driver unbind. Signed-off-by: Johan Hovold <jhovold@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/usb/serial/metro-usb.c')
-rw-r--r--drivers/usb/serial/metro-usb.c5
1 files changed, 1 insertions, 4 deletions
diff --git a/drivers/usb/serial/metro-usb.c b/drivers/usb/serial/metro-usb.c
index bf3c7a23553e..47e247759eb0 100644
--- a/drivers/usb/serial/metro-usb.c
+++ b/drivers/usb/serial/metro-usb.c
@@ -177,10 +177,7 @@ static void metrousb_cleanup(struct usb_serial_port *port)
usb_unlink_urb(port->interrupt_in_urb);
usb_kill_urb(port->interrupt_in_urb);
- mutex_lock(&port->serial->disc_mutex);
- if (!port->serial->disconnected)
- metrousb_send_unidirectional_cmd(UNI_CMD_CLOSE, port);
- mutex_unlock(&port->serial->disc_mutex);
+ metrousb_send_unidirectional_cmd(UNI_CMD_CLOSE, port);
}
static int metrousb_open(struct tty_struct *tty, struct usb_serial_port *port)