diff options
Diffstat (limited to 'drivers/usb/serial/mos7840.c')
-rw-r--r-- | drivers/usb/serial/mos7840.c | 32 |
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 | ||
2644 | static struct usb_serial_driver moschip7840_4port_device = { | 2643 | static 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 | ||
2675 | static 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); | ||
2704 | failed_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 | } |