diff options
Diffstat (limited to 'drivers/usb/serial/usb-serial.c')
| -rw-r--r-- | drivers/usb/serial/usb-serial.c | 107 |
1 files changed, 50 insertions, 57 deletions
diff --git a/drivers/usb/serial/usb-serial.c b/drivers/usb/serial/usb-serial.c index 2138ba8aeb69..a9934a3f9845 100644 --- a/drivers/usb/serial/usb-serial.c +++ b/drivers/usb/serial/usb-serial.c | |||
| @@ -81,7 +81,7 @@ static struct usb_serial *get_free_serial (struct usb_serial *serial, int num_po | |||
| 81 | unsigned int i, j; | 81 | unsigned int i, j; |
| 82 | int good_spot; | 82 | int good_spot; |
| 83 | 83 | ||
| 84 | dbg("%s %d", __FUNCTION__, num_ports); | 84 | dbg("%s %d", __func__, num_ports); |
| 85 | 85 | ||
| 86 | *minor = 0; | 86 | *minor = 0; |
| 87 | mutex_lock(&table_lock); | 87 | mutex_lock(&table_lock); |
| @@ -101,7 +101,7 @@ static struct usb_serial *get_free_serial (struct usb_serial *serial, int num_po | |||
| 101 | 101 | ||
| 102 | *minor = i; | 102 | *minor = i; |
| 103 | j = 0; | 103 | j = 0; |
| 104 | dbg("%s - minor base = %d", __FUNCTION__, *minor); | 104 | dbg("%s - minor base = %d", __func__, *minor); |
| 105 | for (i = *minor; (i < (*minor + num_ports)) && (i < SERIAL_TTY_MINORS); ++i) { | 105 | for (i = *minor; (i < (*minor + num_ports)) && (i < SERIAL_TTY_MINORS); ++i) { |
| 106 | serial_table[i] = serial; | 106 | serial_table[i] = serial; |
| 107 | serial->port[j++]->number = i; | 107 | serial->port[j++]->number = i; |
| @@ -117,7 +117,7 @@ static void return_serial(struct usb_serial *serial) | |||
| 117 | { | 117 | { |
| 118 | int i; | 118 | int i; |
| 119 | 119 | ||
| 120 | dbg("%s", __FUNCTION__); | 120 | dbg("%s", __func__); |
| 121 | 121 | ||
| 122 | if (serial == NULL) | 122 | if (serial == NULL) |
| 123 | return; | 123 | return; |
| @@ -135,7 +135,7 @@ static void destroy_serial(struct kref *kref) | |||
| 135 | 135 | ||
| 136 | serial = to_usb_serial(kref); | 136 | serial = to_usb_serial(kref); |
| 137 | 137 | ||
| 138 | dbg("%s - %s", __FUNCTION__, serial->type->description); | 138 | dbg("%s - %s", __func__, serial->type->description); |
| 139 | 139 | ||
| 140 | serial->type->shutdown(serial); | 140 | serial->type->shutdown(serial); |
| 141 | 141 | ||
| @@ -187,7 +187,7 @@ static int serial_open (struct tty_struct *tty, struct file * filp) | |||
| 187 | unsigned int portNumber; | 187 | unsigned int portNumber; |
| 188 | int retval; | 188 | int retval; |
| 189 | 189 | ||
| 190 | dbg("%s", __FUNCTION__); | 190 | dbg("%s", __func__); |
| 191 | 191 | ||
| 192 | /* get the serial object associated with this tty pointer */ | 192 | /* get the serial object associated with this tty pointer */ |
| 193 | serial = usb_serial_get_by_index(tty->index); | 193 | serial = usb_serial_get_by_index(tty->index); |
| @@ -259,7 +259,7 @@ static void serial_close(struct tty_struct *tty, struct file * filp) | |||
| 259 | if (!port) | 259 | if (!port) |
| 260 | return; | 260 | return; |
| 261 | 261 | ||
| 262 | dbg("%s - port %d", __FUNCTION__, port->number); | 262 | dbg("%s - port %d", __func__, port->number); |
| 263 | 263 | ||
| 264 | mutex_lock(&port->mutex); | 264 | mutex_lock(&port->mutex); |
| 265 | 265 | ||
| @@ -299,11 +299,11 @@ static int serial_write (struct tty_struct * tty, const unsigned char *buf, int | |||
| 299 | if (!port || port->serial->dev->state == USB_STATE_NOTATTACHED) | 299 | if (!port || port->serial->dev->state == USB_STATE_NOTATTACHED) |
| 300 | goto exit; | 300 | goto exit; |
| 301 | 301 | ||
| 302 | dbg("%s - port %d, %d byte(s)", __FUNCTION__, port->number, count); | 302 | dbg("%s - port %d, %d byte(s)", __func__, port->number, count); |
| 303 | 303 | ||
| 304 | if (!port->open_count) { | 304 | if (!port->open_count) { |
| 305 | retval = -EINVAL; | 305 | retval = -EINVAL; |
| 306 | dbg("%s - port not opened", __FUNCTION__); | 306 | dbg("%s - port not opened", __func__); |
| 307 | goto exit; | 307 | goto exit; |
| 308 | } | 308 | } |
| 309 | 309 | ||
| @@ -322,10 +322,10 @@ static int serial_write_room (struct tty_struct *tty) | |||
| 322 | if (!port) | 322 | if (!port) |
| 323 | goto exit; | 323 | goto exit; |
| 324 | 324 | ||
| 325 | dbg("%s - port %d", __FUNCTION__, port->number); | 325 | dbg("%s - port %d", __func__, port->number); |
| 326 | 326 | ||
| 327 | if (!port->open_count) { | 327 | if (!port->open_count) { |
| 328 | dbg("%s - port not open", __FUNCTION__); | 328 | dbg("%s - port not open", __func__); |
| 329 | goto exit; | 329 | goto exit; |
| 330 | } | 330 | } |
| 331 | 331 | ||
| @@ -344,10 +344,10 @@ static int serial_chars_in_buffer (struct tty_struct *tty) | |||
| 344 | if (!port) | 344 | if (!port) |
| 345 | goto exit; | 345 | goto exit; |
| 346 | 346 | ||
| 347 | dbg("%s = port %d", __FUNCTION__, port->number); | 347 | dbg("%s = port %d", __func__, port->number); |
| 348 | 348 | ||
| 349 | if (!port->open_count) { | 349 | if (!port->open_count) { |
| 350 | dbg("%s - port not open", __FUNCTION__); | 350 | dbg("%s - port not open", __func__); |
| 351 | goto exit; | 351 | goto exit; |
| 352 | } | 352 | } |
| 353 | 353 | ||
| @@ -365,10 +365,10 @@ static void serial_throttle (struct tty_struct * tty) | |||
| 365 | if (!port) | 365 | if (!port) |
| 366 | return; | 366 | return; |
| 367 | 367 | ||
| 368 | dbg("%s - port %d", __FUNCTION__, port->number); | 368 | dbg("%s - port %d", __func__, port->number); |
| 369 | 369 | ||
| 370 | if (!port->open_count) { | 370 | if (!port->open_count) { |
| 371 | dbg ("%s - port not open", __FUNCTION__); | 371 | dbg ("%s - port not open", __func__); |
| 372 | return; | 372 | return; |
| 373 | } | 373 | } |
| 374 | 374 | ||
| @@ -384,10 +384,10 @@ static void serial_unthrottle (struct tty_struct * tty) | |||
| 384 | if (!port) | 384 | if (!port) |
| 385 | return; | 385 | return; |
| 386 | 386 | ||
| 387 | dbg("%s - port %d", __FUNCTION__, port->number); | 387 | dbg("%s - port %d", __func__, port->number); |
| 388 | 388 | ||
| 389 | if (!port->open_count) { | 389 | if (!port->open_count) { |
| 390 | dbg("%s - port not open", __FUNCTION__); | 390 | dbg("%s - port not open", __func__); |
| 391 | return; | 391 | return; |
| 392 | } | 392 | } |
| 393 | 393 | ||
| @@ -401,13 +401,15 @@ static int serial_ioctl (struct tty_struct *tty, struct file * file, unsigned in | |||
| 401 | struct usb_serial_port *port = tty->driver_data; | 401 | struct usb_serial_port *port = tty->driver_data; |
| 402 | int retval = -ENODEV; | 402 | int retval = -ENODEV; |
| 403 | 403 | ||
| 404 | lock_kernel(); | ||
| 404 | if (!port) | 405 | if (!port) |
| 405 | goto exit; | 406 | goto exit; |
| 406 | 407 | ||
| 407 | dbg("%s - port %d, cmd 0x%.4x", __FUNCTION__, port->number, cmd); | 408 | dbg("%s - port %d, cmd 0x%.4x", __func__, port->number, cmd); |
| 408 | 409 | ||
| 410 | /* Caution - port->open_count is BKL protected */ | ||
| 409 | if (!port->open_count) { | 411 | if (!port->open_count) { |
| 410 | dbg ("%s - port not open", __FUNCTION__); | 412 | dbg ("%s - port not open", __func__); |
| 411 | goto exit; | 413 | goto exit; |
| 412 | } | 414 | } |
| 413 | 415 | ||
| @@ -416,8 +418,8 @@ static int serial_ioctl (struct tty_struct *tty, struct file * file, unsigned in | |||
| 416 | retval = port->serial->type->ioctl(port, file, cmd, arg); | 418 | retval = port->serial->type->ioctl(port, file, cmd, arg); |
| 417 | else | 419 | else |
| 418 | retval = -ENOIOCTLCMD; | 420 | retval = -ENOIOCTLCMD; |
| 419 | |||
| 420 | exit: | 421 | exit: |
| 422 | unlock_kernel(); | ||
| 421 | return retval; | 423 | return retval; |
| 422 | } | 424 | } |
| 423 | 425 | ||
| @@ -428,10 +430,10 @@ static void serial_set_termios (struct tty_struct *tty, struct ktermios * old) | |||
| 428 | if (!port) | 430 | if (!port) |
| 429 | return; | 431 | return; |
| 430 | 432 | ||
| 431 | dbg("%s - port %d", __FUNCTION__, port->number); | 433 | dbg("%s - port %d", __func__, port->number); |
| 432 | 434 | ||
| 433 | if (!port->open_count) { | 435 | if (!port->open_count) { |
| 434 | dbg("%s - port not open", __FUNCTION__); | 436 | dbg("%s - port not open", __func__); |
| 435 | return; | 437 | return; |
| 436 | } | 438 | } |
| 437 | 439 | ||
| @@ -446,19 +448,24 @@ static void serial_break (struct tty_struct *tty, int break_state) | |||
| 446 | { | 448 | { |
| 447 | struct usb_serial_port *port = tty->driver_data; | 449 | struct usb_serial_port *port = tty->driver_data; |
| 448 | 450 | ||
| 449 | if (!port) | 451 | lock_kernel(); |
| 452 | if (!port) { | ||
| 453 | unlock_kernel(); | ||
| 450 | return; | 454 | return; |
| 455 | } | ||
| 451 | 456 | ||
| 452 | dbg("%s - port %d", __FUNCTION__, port->number); | 457 | dbg("%s - port %d", __func__, port->number); |
| 453 | 458 | ||
| 454 | if (!port->open_count) { | 459 | if (!port->open_count) { |
| 455 | dbg("%s - port not open", __FUNCTION__); | 460 | dbg("%s - port not open", __func__); |
| 461 | unlock_kernel(); | ||
| 456 | return; | 462 | return; |
| 457 | } | 463 | } |
| 458 | 464 | ||
| 459 | /* pass on to the driver specific version of this function if it is available */ | 465 | /* pass on to the driver specific version of this function if it is available */ |
| 460 | if (port->serial->type->break_ctl) | 466 | if (port->serial->type->break_ctl) |
| 461 | port->serial->type->break_ctl(port, break_state); | 467 | port->serial->type->break_ctl(port, break_state); |
| 468 | unlock_kernel(); | ||
| 462 | } | 469 | } |
| 463 | 470 | ||
| 464 | static int serial_read_proc (char *page, char **start, off_t off, int count, int *eof, void *data) | 471 | static int serial_read_proc (char *page, char **start, off_t off, int count, int *eof, void *data) |
| @@ -469,7 +476,7 @@ static int serial_read_proc (char *page, char **start, off_t off, int count, int | |||
| 469 | off_t begin = 0; | 476 | off_t begin = 0; |
| 470 | char tmp[40]; | 477 | char tmp[40]; |
| 471 | 478 | ||
| 472 | dbg("%s", __FUNCTION__); | 479 | dbg("%s", __func__); |
| 473 | length += sprintf (page, "usbserinfo:1.0 driver:2.0\n"); | 480 | length += sprintf (page, "usbserinfo:1.0 driver:2.0\n"); |
| 474 | for (i = 0; i < SERIAL_TTY_MINORS && length < PAGE_SIZE; ++i) { | 481 | for (i = 0; i < SERIAL_TTY_MINORS && length < PAGE_SIZE; ++i) { |
| 475 | serial = usb_serial_get_by_index(i); | 482 | serial = usb_serial_get_by_index(i); |
| @@ -515,10 +522,10 @@ static int serial_tiocmget (struct tty_struct *tty, struct file *file) | |||
| 515 | if (!port) | 522 | if (!port) |
| 516 | return -ENODEV; | 523 | return -ENODEV; |
| 517 | 524 | ||
| 518 | dbg("%s - port %d", __FUNCTION__, port->number); | 525 | dbg("%s - port %d", __func__, port->number); |
| 519 | 526 | ||
| 520 | if (!port->open_count) { | 527 | if (!port->open_count) { |
| 521 | dbg("%s - port not open", __FUNCTION__); | 528 | dbg("%s - port not open", __func__); |
| 522 | return -ENODEV; | 529 | return -ENODEV; |
| 523 | } | 530 | } |
| 524 | 531 | ||
| @@ -536,10 +543,10 @@ static int serial_tiocmset (struct tty_struct *tty, struct file *file, | |||
| 536 | if (!port) | 543 | if (!port) |
| 537 | return -ENODEV; | 544 | return -ENODEV; |
| 538 | 545 | ||
| 539 | dbg("%s - port %d", __FUNCTION__, port->number); | 546 | dbg("%s - port %d", __func__, port->number); |
| 540 | 547 | ||
| 541 | if (!port->open_count) { | 548 | if (!port->open_count) { |
| 542 | dbg("%s - port not open", __FUNCTION__); | 549 | dbg("%s - port not open", __func__); |
| 543 | return -ENODEV; | 550 | return -ENODEV; |
| 544 | } | 551 | } |
| 545 | 552 | ||
| @@ -565,7 +572,7 @@ static void usb_serial_port_work(struct work_struct *work) | |||
| 565 | container_of(work, struct usb_serial_port, work); | 572 | container_of(work, struct usb_serial_port, work); |
| 566 | struct tty_struct *tty; | 573 | struct tty_struct *tty; |
| 567 | 574 | ||
| 568 | dbg("%s - port %d", __FUNCTION__, port->number); | 575 | dbg("%s - port %d", __func__, port->number); |
| 569 | 576 | ||
| 570 | if (!port) | 577 | if (!port) |
| 571 | return; | 578 | return; |
| @@ -581,7 +588,7 @@ static void port_release(struct device *dev) | |||
| 581 | { | 588 | { |
| 582 | struct usb_serial_port *port = to_usb_serial_port(dev); | 589 | struct usb_serial_port *port = to_usb_serial_port(dev); |
| 583 | 590 | ||
| 584 | dbg ("%s - %s", __FUNCTION__, dev->bus_id); | 591 | dbg ("%s - %s", __func__, dev->bus_id); |
| 585 | port_free(port); | 592 | port_free(port); |
| 586 | } | 593 | } |
| 587 | 594 | ||
| @@ -627,7 +634,7 @@ static struct usb_serial * create_serial (struct usb_device *dev, | |||
| 627 | 634 | ||
| 628 | serial = kzalloc(sizeof(*serial), GFP_KERNEL); | 635 | serial = kzalloc(sizeof(*serial), GFP_KERNEL); |
| 629 | if (!serial) { | 636 | if (!serial) { |
| 630 | dev_err(&dev->dev, "%s - out of memory\n", __FUNCTION__); | 637 | dev_err(&dev->dev, "%s - out of memory\n", __func__); |
| 631 | return NULL; | 638 | return NULL; |
| 632 | } | 639 | } |
| 633 | serial->dev = usb_get_dev(dev); | 640 | serial->dev = usb_get_dev(dev); |
| @@ -722,7 +729,7 @@ int usb_serial_probe(struct usb_interface *interface, | |||
| 722 | serial = create_serial (dev, interface, type); | 729 | serial = create_serial (dev, interface, type); |
| 723 | if (!serial) { | 730 | if (!serial) { |
| 724 | unlock_kernel(); | 731 | unlock_kernel(); |
| 725 | dev_err(&interface->dev, "%s - out of memory\n", __FUNCTION__); | 732 | dev_err(&interface->dev, "%s - out of memory\n", __func__); |
| 726 | return -ENOMEM; | 733 | return -ENOMEM; |
| 727 | } | 734 | } |
| 728 | 735 | ||
| @@ -854,22 +861,6 @@ int usb_serial_probe(struct usb_interface *interface, | |||
| 854 | serial->num_interrupt_in = num_interrupt_in; | 861 | serial->num_interrupt_in = num_interrupt_in; |
| 855 | serial->num_interrupt_out = num_interrupt_out; | 862 | serial->num_interrupt_out = num_interrupt_out; |
| 856 | 863 | ||
| 857 | #if 0 | ||
| 858 | /* check that the device meets the driver's requirements */ | ||
| 859 | if ((type->num_interrupt_in != NUM_DONT_CARE && | ||
| 860 | type->num_interrupt_in != num_interrupt_in) | ||
| 861 | || (type->num_interrupt_out != NUM_DONT_CARE && | ||
| 862 | type->num_interrupt_out != num_interrupt_out) | ||
| 863 | || (type->num_bulk_in != NUM_DONT_CARE && | ||
| 864 | type->num_bulk_in != num_bulk_in) | ||
| 865 | || (type->num_bulk_out != NUM_DONT_CARE && | ||
| 866 | type->num_bulk_out != num_bulk_out)) { | ||
| 867 | dbg("wrong number of endpoints"); | ||
| 868 | kfree(serial); | ||
| 869 | return -EIO; | ||
| 870 | } | ||
| 871 | #endif | ||
| 872 | |||
| 873 | /* found all that we need */ | 864 | /* found all that we need */ |
| 874 | dev_info(&interface->dev, "%s converter detected\n", | 865 | dev_info(&interface->dev, "%s converter detected\n", |
| 875 | type->description); | 866 | type->description); |
| @@ -883,7 +874,7 @@ int usb_serial_probe(struct usb_interface *interface, | |||
| 883 | serial->num_port_pointers = max_endpoints; | 874 | serial->num_port_pointers = max_endpoints; |
| 884 | unlock_kernel(); | 875 | unlock_kernel(); |
| 885 | 876 | ||
| 886 | dbg("%s - setting up %d port structures for this device", __FUNCTION__, max_endpoints); | 877 | dbg("%s - setting up %d port structures for this device", __func__, max_endpoints); |
| 887 | for (i = 0; i < max_endpoints; ++i) { | 878 | for (i = 0; i < max_endpoints; ++i) { |
| 888 | port = kzalloc(sizeof(struct usb_serial_port), GFP_KERNEL); | 879 | port = kzalloc(sizeof(struct usb_serial_port), GFP_KERNEL); |
| 889 | if (!port) | 880 | if (!port) |
| @@ -1031,7 +1022,7 @@ int usb_serial_probe(struct usb_interface *interface, | |||
| 1031 | port->dev.release = &port_release; | 1022 | port->dev.release = &port_release; |
| 1032 | 1023 | ||
| 1033 | snprintf (&port->dev.bus_id[0], sizeof(port->dev.bus_id), "ttyUSB%d", port->number); | 1024 | snprintf (&port->dev.bus_id[0], sizeof(port->dev.bus_id), "ttyUSB%d", port->number); |
| 1034 | dbg ("%s - registering %s", __FUNCTION__, port->dev.bus_id); | 1025 | dbg ("%s - registering %s", __func__, port->dev.bus_id); |
| 1035 | retval = device_register(&port->dev); | 1026 | retval = device_register(&port->dev); |
| 1036 | if (retval) | 1027 | if (retval) |
| 1037 | dev_err(&port->dev, "Error registering port device, " | 1028 | dev_err(&port->dev, "Error registering port device, " |
| @@ -1090,7 +1081,7 @@ void usb_serial_disconnect(struct usb_interface *interface) | |||
| 1090 | struct usb_serial_port *port; | 1081 | struct usb_serial_port *port; |
| 1091 | 1082 | ||
| 1092 | usb_serial_console_disconnect(serial); | 1083 | usb_serial_console_disconnect(serial); |
| 1093 | dbg ("%s", __FUNCTION__); | 1084 | dbg ("%s", __func__); |
| 1094 | 1085 | ||
| 1095 | mutex_lock(&serial->disc_mutex); | 1086 | mutex_lock(&serial->disc_mutex); |
| 1096 | usb_set_intfdata (interface, NULL); | 1087 | usb_set_intfdata (interface, NULL); |
| @@ -1174,7 +1165,7 @@ static int __init usb_serial_init(void) | |||
| 1174 | 1165 | ||
| 1175 | result = bus_register(&usb_serial_bus_type); | 1166 | result = bus_register(&usb_serial_bus_type); |
| 1176 | if (result) { | 1167 | if (result) { |
| 1177 | err("%s - registering bus driver failed", __FUNCTION__); | 1168 | err("%s - registering bus driver failed", __func__); |
| 1178 | goto exit_bus; | 1169 | goto exit_bus; |
| 1179 | } | 1170 | } |
| 1180 | 1171 | ||
| @@ -1188,24 +1179,26 @@ static int __init usb_serial_init(void) | |||
| 1188 | usb_serial_tty_driver->flags = TTY_DRIVER_REAL_RAW | TTY_DRIVER_DYNAMIC_DEV; | 1179 | usb_serial_tty_driver->flags = TTY_DRIVER_REAL_RAW | TTY_DRIVER_DYNAMIC_DEV; |
| 1189 | usb_serial_tty_driver->init_termios = tty_std_termios; | 1180 | usb_serial_tty_driver->init_termios = tty_std_termios; |
| 1190 | usb_serial_tty_driver->init_termios.c_cflag = B9600 | CS8 | CREAD | HUPCL | CLOCAL; | 1181 | usb_serial_tty_driver->init_termios.c_cflag = B9600 | CS8 | CREAD | HUPCL | CLOCAL; |
| 1182 | usb_serial_tty_driver->init_termios.c_ispeed = 9600; | ||
| 1183 | usb_serial_tty_driver->init_termios.c_ospeed = 9600; | ||
| 1191 | tty_set_operations(usb_serial_tty_driver, &serial_ops); | 1184 | tty_set_operations(usb_serial_tty_driver, &serial_ops); |
| 1192 | result = tty_register_driver(usb_serial_tty_driver); | 1185 | result = tty_register_driver(usb_serial_tty_driver); |
| 1193 | if (result) { | 1186 | if (result) { |
| 1194 | err("%s - tty_register_driver failed", __FUNCTION__); | 1187 | err("%s - tty_register_driver failed", __func__); |
| 1195 | goto exit_reg_driver; | 1188 | goto exit_reg_driver; |
| 1196 | } | 1189 | } |
| 1197 | 1190 | ||
| 1198 | /* register the USB driver */ | 1191 | /* register the USB driver */ |
| 1199 | result = usb_register(&usb_serial_driver); | 1192 | result = usb_register(&usb_serial_driver); |
| 1200 | if (result < 0) { | 1193 | if (result < 0) { |
| 1201 | err("%s - usb_register failed", __FUNCTION__); | 1194 | err("%s - usb_register failed", __func__); |
| 1202 | goto exit_tty; | 1195 | goto exit_tty; |
| 1203 | } | 1196 | } |
| 1204 | 1197 | ||
| 1205 | /* register the generic driver, if we should */ | 1198 | /* register the generic driver, if we should */ |
| 1206 | result = usb_serial_generic_register(debug); | 1199 | result = usb_serial_generic_register(debug); |
| 1207 | if (result < 0) { | 1200 | if (result < 0) { |
| 1208 | err("%s - registering generic driver failed", __FUNCTION__); | 1201 | err("%s - registering generic driver failed", __func__); |
| 1209 | goto exit_generic; | 1202 | goto exit_generic; |
| 1210 | } | 1203 | } |
| 1211 | 1204 | ||
| @@ -1223,7 +1216,7 @@ exit_reg_driver: | |||
| 1223 | bus_unregister(&usb_serial_bus_type); | 1216 | bus_unregister(&usb_serial_bus_type); |
| 1224 | 1217 | ||
| 1225 | exit_bus: | 1218 | exit_bus: |
| 1226 | err ("%s - returning with error %d", __FUNCTION__, result); | 1219 | err ("%s - returning with error %d", __func__, result); |
| 1227 | put_tty_driver(usb_serial_tty_driver); | 1220 | put_tty_driver(usb_serial_tty_driver); |
| 1228 | return result; | 1221 | return result; |
| 1229 | } | 1222 | } |
