diff options
Diffstat (limited to 'drivers/usb/serial/digi_acceleport.c')
-rw-r--r-- | drivers/usb/serial/digi_acceleport.c | 20 |
1 files changed, 15 insertions, 5 deletions
diff --git a/drivers/usb/serial/digi_acceleport.c b/drivers/usb/serial/digi_acceleport.c index 30f5140eff03..f4808091c47c 100644 --- a/drivers/usb/serial/digi_acceleport.c +++ b/drivers/usb/serial/digi_acceleport.c | |||
@@ -460,7 +460,8 @@ static int digi_carrier_raised(struct usb_serial_port *port); | |||
460 | static void digi_dtr_rts(struct usb_serial_port *port, int on); | 460 | static void digi_dtr_rts(struct usb_serial_port *port, int on); |
461 | static int digi_startup_device(struct usb_serial *serial); | 461 | static int digi_startup_device(struct usb_serial *serial); |
462 | static int digi_startup(struct usb_serial *serial); | 462 | static int digi_startup(struct usb_serial *serial); |
463 | static void digi_shutdown(struct usb_serial *serial); | 463 | static void digi_disconnect(struct usb_serial *serial); |
464 | static void digi_release(struct usb_serial *serial); | ||
464 | static void digi_read_bulk_callback(struct urb *urb); | 465 | static void digi_read_bulk_callback(struct urb *urb); |
465 | static int digi_read_inb_callback(struct urb *urb); | 466 | static int digi_read_inb_callback(struct urb *urb); |
466 | static int digi_read_oob_callback(struct urb *urb); | 467 | static int digi_read_oob_callback(struct urb *urb); |
@@ -524,7 +525,8 @@ static struct usb_serial_driver digi_acceleport_2_device = { | |||
524 | .tiocmget = digi_tiocmget, | 525 | .tiocmget = digi_tiocmget, |
525 | .tiocmset = digi_tiocmset, | 526 | .tiocmset = digi_tiocmset, |
526 | .attach = digi_startup, | 527 | .attach = digi_startup, |
527 | .shutdown = digi_shutdown, | 528 | .disconnect = digi_disconnect, |
529 | .release = digi_release, | ||
528 | }; | 530 | }; |
529 | 531 | ||
530 | static struct usb_serial_driver digi_acceleport_4_device = { | 532 | static struct usb_serial_driver digi_acceleport_4_device = { |
@@ -550,7 +552,8 @@ static struct usb_serial_driver digi_acceleport_4_device = { | |||
550 | .tiocmget = digi_tiocmget, | 552 | .tiocmget = digi_tiocmget, |
551 | .tiocmset = digi_tiocmset, | 553 | .tiocmset = digi_tiocmset, |
552 | .attach = digi_startup, | 554 | .attach = digi_startup, |
553 | .shutdown = digi_shutdown, | 555 | .disconnect = digi_disconnect, |
556 | .release = digi_release, | ||
554 | }; | 557 | }; |
555 | 558 | ||
556 | 559 | ||
@@ -1556,16 +1559,23 @@ static int digi_startup(struct usb_serial *serial) | |||
1556 | } | 1559 | } |
1557 | 1560 | ||
1558 | 1561 | ||
1559 | static void digi_shutdown(struct usb_serial *serial) | 1562 | static void digi_disconnect(struct usb_serial *serial) |
1560 | { | 1563 | { |
1561 | int i; | 1564 | int i; |
1562 | dbg("digi_shutdown: TOP, in_interrupt()=%ld", in_interrupt()); | 1565 | dbg("digi_disconnect: TOP, in_interrupt()=%ld", in_interrupt()); |
1563 | 1566 | ||
1564 | /* stop reads and writes on all ports */ | 1567 | /* stop reads and writes on all ports */ |
1565 | for (i = 0; i < serial->type->num_ports + 1; i++) { | 1568 | for (i = 0; i < serial->type->num_ports + 1; i++) { |
1566 | usb_kill_urb(serial->port[i]->read_urb); | 1569 | usb_kill_urb(serial->port[i]->read_urb); |
1567 | usb_kill_urb(serial->port[i]->write_urb); | 1570 | usb_kill_urb(serial->port[i]->write_urb); |
1568 | } | 1571 | } |
1572 | } | ||
1573 | |||
1574 | |||
1575 | static void digi_release(struct usb_serial *serial) | ||
1576 | { | ||
1577 | int i; | ||
1578 | dbg("digi_release: TOP, in_interrupt()=%ld", in_interrupt()); | ||
1569 | 1579 | ||
1570 | /* free the private data structures for all ports */ | 1580 | /* free the private data structures for all ports */ |
1571 | /* number of regular ports + 1 for the out-of-band port */ | 1581 | /* number of regular ports + 1 for the out-of-band port */ |