aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-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)