aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/usb/serial/pl2303.c
diff options
context:
space:
mode:
authorJohan Hovold <jhovold@gmail.com>2010-03-17 18:06:04 -0400
committerGreg Kroah-Hartman <gregkh@suse.de>2010-05-20 16:21:34 -0400
commit8b0127b2082601e40295045414a8318f2c8ee5a0 (patch)
tree473390271d0ba689c45a1f7cca6068158deef5d8 /drivers/usb/serial/pl2303.c
parent684c6e30d389f67ef727c8f5a7b23a09b4cb02e4 (diff)
USB: pl2303: use generic close
Use usb_serial_generic_close to kill the read and write urbs and to reset the write fifo. Signed-off-by: Johan Hovold <jhovold@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/usb/serial/pl2303.c')
-rw-r--r--drivers/usb/serial/pl2303.c13
1 files changed, 1 insertions, 12 deletions
diff --git a/drivers/usb/serial/pl2303.c b/drivers/usb/serial/pl2303.c
index 28037c1af93e..18d1c44faa51 100644
--- a/drivers/usb/serial/pl2303.c
+++ b/drivers/usb/serial/pl2303.c
@@ -456,21 +456,10 @@ static void pl2303_dtr_rts(struct usb_serial_port *port, int on)
456 456
457static void pl2303_close(struct usb_serial_port *port) 457static void pl2303_close(struct usb_serial_port *port)
458{ 458{
459 unsigned long flags;
460
461 dbg("%s - port %d", __func__, port->number); 459 dbg("%s - port %d", __func__, port->number);
462 460
463 spin_lock_irqsave(&port->lock, flags); 461 usb_serial_generic_close(port);
464 /* clear out any remaining data in the buffer */
465 kfifo_reset_out(&port->write_fifo);
466 spin_unlock_irqrestore(&port->lock, flags);
467
468 /* shutdown our urbs */
469 dbg("%s - shutting down urbs", __func__);
470 usb_kill_urb(port->write_urb);
471 usb_kill_urb(port->read_urb);
472 usb_kill_urb(port->interrupt_in_urb); 462 usb_kill_urb(port->interrupt_in_urb);
473
474} 463}
475 464
476static int pl2303_open(struct tty_struct *tty, struct usb_serial_port *port) 465static int pl2303_open(struct tty_struct *tty, struct usb_serial_port *port)