aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/usb/serial/mos7840.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/usb/serial/mos7840.c')
-rw-r--r--drivers/usb/serial/mos7840.c32
1 files changed, 10 insertions, 22 deletions
diff --git a/drivers/usb/serial/mos7840.c b/drivers/usb/serial/mos7840.c
index 19b11cece6ba..b45522e12f68 100644
--- a/drivers/usb/serial/mos7840.c
+++ b/drivers/usb/serial/mos7840.c
@@ -2638,7 +2638,6 @@ static struct usb_driver io_driver = {
2638 .probe = usb_serial_probe, 2638 .probe = usb_serial_probe,
2639 .disconnect = usb_serial_disconnect, 2639 .disconnect = usb_serial_disconnect,
2640 .id_table = moschip_id_table_combined, 2640 .id_table = moschip_id_table_combined,
2641 .no_dynamic_id = 1,
2642}; 2641};
2643 2642
2644static struct usb_serial_driver moschip7840_4port_device = { 2643static struct usb_serial_driver moschip7840_4port_device = {
@@ -2647,7 +2646,6 @@ static struct usb_serial_driver moschip7840_4port_device = {
2647 .name = "mos7840", 2646 .name = "mos7840",
2648 }, 2647 },
2649 .description = DRIVER_DESC, 2648 .description = DRIVER_DESC,
2650 .usb_driver = &io_driver,
2651 .id_table = moschip_port_id_table, 2649 .id_table = moschip_port_id_table,
2652 .num_ports = 4, 2650 .num_ports = 4,
2653 .open = mos7840_open, 2651 .open = mos7840_open,
@@ -2674,6 +2672,10 @@ static struct usb_serial_driver moschip7840_4port_device = {
2674 .read_int_callback = mos7840_interrupt_callback, 2672 .read_int_callback = mos7840_interrupt_callback,
2675}; 2673};
2676 2674
2675static struct usb_serial_driver * const serial_drivers[] = {
2676 &moschip7840_4port_device, NULL
2677};
2678
2677/**************************************************************************** 2679/****************************************************************************
2678 * moschip7840_init 2680 * moschip7840_init
2679 * This is called by the module subsystem, or on startup to initialize us 2681 * This is called by the module subsystem, or on startup to initialize us
@@ -2684,24 +2686,12 @@ static int __init moschip7840_init(void)
2684 2686
2685 dbg("%s", " mos7840_init :entering.........."); 2687 dbg("%s", " mos7840_init :entering..........");
2686 2688
2687 /* Register with the usb serial */ 2689 retval = usb_serial_register_drivers(&io_driver, serial_drivers);
2688 retval = usb_serial_register(&moschip7840_4port_device); 2690 if (retval == 0)
2689 2691 printk(KERN_INFO KBUILD_MODNAME ": " DRIVER_VERSION ":"
2690 if (retval) 2692 DRIVER_DESC "\n");
2691 goto failed_port_device_register;
2692
2693 dbg("%s", "Entering...");
2694 printk(KERN_INFO KBUILD_MODNAME ": " DRIVER_VERSION ":"
2695 DRIVER_DESC "\n");
2696 2693
2697 /* Register with the usb */ 2694 dbg("%s", "Leaving...");
2698 retval = usb_register(&io_driver);
2699 if (retval == 0) {
2700 dbg("%s", "Leaving...");
2701 return 0;
2702 }
2703 usb_serial_deregister(&moschip7840_4port_device);
2704failed_port_device_register:
2705 return retval; 2695 return retval;
2706} 2696}
2707 2697
@@ -2714,9 +2704,7 @@ static void __exit moschip7840_exit(void)
2714 2704
2715 dbg("%s", " mos7840_exit :entering.........."); 2705 dbg("%s", " mos7840_exit :entering..........");
2716 2706
2717 usb_deregister(&io_driver); 2707 usb_serial_deregister_drivers(&io_driver, serial_drivers);
2718
2719 usb_serial_deregister(&moschip7840_4port_device);
2720 2708
2721 dbg("%s", "Entering..."); 2709 dbg("%s", "Entering...");
2722} 2710}