USB: io_ti: use tty-port drain delay
authorJohan Hovold <jhovold@gmail.com>
Mon, 14 Jan 2013 15:52:55 +0000 (16:52 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 18 Jan 2013 23:45:17 +0000 (15:45 -0800)
Use tty-port drain delay rather than custom implementation in
chase_port.

Signed-off-by: Johan Hovold <jhovold@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/usb/serial/io_ti.c

index 596f8c9474b4efd76fc1925d7d75b1511e0c481b..3abbdaad838d5f892761c940ad09b0d03b1233d3 100644 (file)
@@ -523,7 +523,6 @@ exit_is_tx_active:
 
 static void chase_port(struct edgeport_port *port, unsigned long timeout)
 {
-       int baud_rate;
        struct tty_struct *tty = tty_port_tty_get(&port->port->port);
        struct usb_serial *serial = port->port->serial;
        wait_queue_t wait;
@@ -561,17 +560,6 @@ static void chase_port(struct edgeport_port *port, unsigned long timeout)
                        break;
                msleep(10);
        }
-
-       /* disconnected */
-       if (serial->disconnected)
-               return;
-
-       /* wait one more character time, based on baud rate */
-       /* (tx_active doesn't seem to wait for the last byte) */
-       baud_rate = port->baud_rate;
-       if (baud_rate == 0)
-               baud_rate = 50;
-       msleep(max(1, DIV_ROUND_UP(10000, baud_rate)));
 }
 
 static int choose_config(struct usb_device *dev)
@@ -1938,6 +1926,8 @@ static int edge_open(struct tty_struct *tty, struct usb_serial_port *port)
 
        ++edge_serial->num_ports_open;
 
+       port->port.drain_delay = 1;
+
        goto release_es_lock;
 
 unlink_int_urb: