usb-serial: use new registration API in [n-p]* drivers
authorAlan Stern <stern@rowland.harvard.edu>
Thu, 23 Feb 2012 19:57:18 +0000 (14:57 -0500)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 24 Feb 2012 20:39:20 +0000 (12:39 -0800)
This patch (as1527) modifies the following usb-serial drivers to
utilize the new usb_serial_{de}register_drivers() routines:

navman, omninet, opticon, option, oti6858, and pl2303.

Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/usb/serial/navman.c
drivers/usb/serial/omninet.c
drivers/usb/serial/opticon.c
drivers/usb/serial/option.c
drivers/usb/serial/oti6858.c
drivers/usb/serial/pl2303.c

index b28f1db0195f8aafaf6f981c95bcdf6d3639e998..fd4b2c833c0b1d54f8a7e2ecfccbebd20adaeb1a 100644 (file)
@@ -35,7 +35,6 @@ static struct usb_driver navman_driver = {
        .probe =        usb_serial_probe,
        .disconnect =   usb_serial_disconnect,
        .id_table =     id_table,
-       .no_dynamic_id =        1,
 };
 
 static void navman_read_int_callback(struct urb *urb)
@@ -122,7 +121,6 @@ static struct usb_serial_driver navman_device = {
                .name =         "navman",
        },
        .id_table =             id_table,
-       .usb_driver =           &navman_driver,
        .num_ports =            1,
        .open =                 navman_open,
        .close =                navman_close,
@@ -130,23 +128,18 @@ static struct usb_serial_driver navman_device = {
        .read_int_callback =    navman_read_int_callback,
 };
 
+static struct usb_serial_driver * const serial_drivers[] = {
+       &navman_device, NULL
+};
+
 static int __init navman_init(void)
 {
-       int retval;
-
-       retval = usb_serial_register(&navman_device);
-       if (retval)
-               return retval;
-       retval = usb_register(&navman_driver);
-       if (retval)
-               usb_serial_deregister(&navman_device);
-       return retval;
+       return usb_serial_register_drivers(&navman_driver, serial_drivers);
 }
 
 static void __exit navman_exit(void)
 {
-       usb_deregister(&navman_driver);
-       usb_serial_deregister(&navman_device);
+       usb_serial_deregister_drivers(&navman_driver, serial_drivers);
 }
 
 module_init(navman_init);
index 033e8afa6c778e147994dbaede63349ef1ad0a59..975d5c559ccb309dc0079707da599d42ab215086 100644 (file)
@@ -62,7 +62,6 @@ static struct usb_driver omninet_driver = {
        .probe =        usb_serial_probe,
        .disconnect =   usb_serial_disconnect,
        .id_table =     id_table,
-       .no_dynamic_id =        1,
 };
 
 
@@ -72,7 +71,6 @@ static struct usb_serial_driver zyxel_omninet_device = {
                .name =         "omninet",
        },
        .description =          "ZyXEL - omni.net lcd plus usb",
-       .usb_driver =           &omninet_driver,
        .id_table =             id_table,
        .num_ports =            1,
        .attach =               omninet_attach,
@@ -86,6 +84,10 @@ static struct usb_serial_driver zyxel_omninet_device = {
        .release =              omninet_release,
 };
 
+static struct usb_serial_driver * const serial_drivers[] = {
+       &zyxel_omninet_device, NULL
+};
+
 
 /* The protocol.
  *
@@ -323,26 +325,18 @@ static void omninet_release(struct usb_serial *serial)
 static int __init omninet_init(void)
 {
        int retval;
-       retval = usb_serial_register(&zyxel_omninet_device);
-       if (retval)
-               goto failed_usb_serial_register;
-       retval = usb_register(&omninet_driver);
-       if (retval)
-               goto failed_usb_register;
-       printk(KERN_INFO KBUILD_MODNAME ": " DRIVER_VERSION ":"
-              DRIVER_DESC "\n");
-       return 0;
-failed_usb_register:
-       usb_serial_deregister(&zyxel_omninet_device);
-failed_usb_serial_register:
+
+       retval = usb_serial_register_drivers(&omninet_driver, serial_drivers);
+       if (retval == 0)
+               printk(KERN_INFO KBUILD_MODNAME ": " DRIVER_VERSION ":"
+                              DRIVER_DESC "\n");
        return retval;
 }
 
 
 static void __exit omninet_exit(void)
 {
-       usb_deregister(&omninet_driver);
-       usb_serial_deregister(&zyxel_omninet_device);
+       usb_serial_deregister_drivers(&omninet_driver, serial_drivers);
 }
 
 
index 262ded9e076b8d91f9d145a704b0160edf396643..7001ad779b9440fc72f7cc650c1b11f447369623 100644 (file)
@@ -604,7 +604,6 @@ static struct usb_driver opticon_driver = {
        .suspend =      opticon_suspend,
        .resume =       opticon_resume,
        .id_table =     id_table,
-       .no_dynamic_id =        1,
 };
 
 static struct usb_serial_driver opticon_device = {
@@ -613,7 +612,6 @@ static struct usb_serial_driver opticon_device = {
                .name =         "opticon",
        },
        .id_table =             id_table,
-       .usb_driver =           &opticon_driver,
        .num_ports =            1,
        .attach =               opticon_startup,
        .open =                 opticon_open,
@@ -629,23 +627,18 @@ static struct usb_serial_driver opticon_device = {
        .tiocmset =             opticon_tiocmset,
 };
 
+static struct usb_serial_driver * const serial_drivers[] = {
+       &opticon_device, NULL
+};
+
 static int __init opticon_init(void)
 {
-       int retval;
-
-       retval = usb_serial_register(&opticon_device);
-       if (retval)
-               return retval;
-       retval = usb_register(&opticon_driver);
-       if (retval)
-               usb_serial_deregister(&opticon_device);
-       return retval;
+       return usb_serial_register_drivers(&opticon_driver, serial_drivers);
 }
 
 static void __exit opticon_exit(void)
 {
-       usb_deregister(&opticon_driver);
-       usb_serial_deregister(&opticon_device);
+       usb_serial_deregister_drivers(&opticon_driver, serial_drivers);
 }
 
 module_init(opticon_init);
index b54afceb9611badc2b3e7cb45c33a12bcefbd0cc..138a7b98cda49c7eca8b83bea1c38e528f76343e 100644 (file)
@@ -1212,7 +1212,6 @@ static struct usb_driver option_driver = {
        .supports_autosuspend = 1,
 #endif
        .id_table   = option_ids,
-       .no_dynamic_id =        1,
 };
 
 /* The card has three separate interfaces, which the serial driver
@@ -1225,7 +1224,6 @@ static struct usb_serial_driver option_1port_device = {
                .name =         "option1",
        },
        .description       = "GSM modem (1-port)",
-       .usb_driver        = &option_driver,
        .id_table          = option_ids,
        .num_ports         = 1,
        .probe             = option_probe,
@@ -1249,6 +1247,10 @@ static struct usb_serial_driver option_1port_device = {
 #endif
 };
 
+static struct usb_serial_driver * const serial_drivers[] = {
+       &option_1port_device, NULL
+};
+
 static bool debug;
 
 /* per port private data */
@@ -1284,28 +1286,17 @@ struct option_port_private {
 static int __init option_init(void)
 {
        int retval;
-       retval = usb_serial_register(&option_1port_device);
-       if (retval)
-               goto failed_1port_device_register;
-       retval = usb_register(&option_driver);
-       if (retval)
-               goto failed_driver_register;
-
-       printk(KERN_INFO KBUILD_MODNAME ": " DRIVER_VERSION ":"
-              DRIVER_DESC "\n");
-
-       return 0;
 
-failed_driver_register:
-       usb_serial_deregister(&option_1port_device);
-failed_1port_device_register:
+       retval = usb_serial_register_drivers(&option_driver, serial_drivers);
+       if (retval == 0)
+               printk(KERN_INFO KBUILD_MODNAME ": " DRIVER_VERSION ":"
+                              DRIVER_DESC "\n");
        return retval;
 }
 
 static void __exit option_exit(void)
 {
-       usb_deregister(&option_driver);
-       usb_serial_deregister(&option_1port_device);
+       usb_serial_deregister_drivers(&option_driver, serial_drivers);
 }
 
 module_init(option_init);
index 343e626a06f89e33df775f1fd908d33c4769d84b..53f2768c9a3693117b70ce05a7952af6389f3f3f 100644 (file)
@@ -71,7 +71,6 @@ static struct usb_driver oti6858_driver = {
        .probe =        usb_serial_probe,
        .disconnect =   usb_serial_disconnect,
        .id_table =     id_table,
-       .no_dynamic_id =        1,
 };
 
 static bool debug;
@@ -157,7 +156,6 @@ static struct usb_serial_driver oti6858_device = {
                .name =         "oti6858",
        },
        .id_table =             id_table,
-       .usb_driver =           &oti6858_driver,
        .num_ports =            1,
        .open =                 oti6858_open,
        .close =                oti6858_close,
@@ -176,6 +174,10 @@ static struct usb_serial_driver oti6858_device = {
        .release =              oti6858_release,
 };
 
+static struct usb_serial_driver * const serial_drivers[] = {
+       &oti6858_device, NULL
+};
+
 struct oti6858_private {
        spinlock_t lock;
 
@@ -960,21 +962,12 @@ static void oti6858_write_bulk_callback(struct urb *urb)
 
 static int __init oti6858_init(void)
 {
-       int retval;
-
-       retval = usb_serial_register(&oti6858_device);
-       if (retval == 0) {
-               retval = usb_register(&oti6858_driver);
-               if (retval)
-                       usb_serial_deregister(&oti6858_device);
-       }
-       return retval;
+       return usb_serial_register_drivers(&oti6858_driver, serial_drivers);
 }
 
 static void __exit oti6858_exit(void)
 {
-       usb_deregister(&oti6858_driver);
-       usb_serial_deregister(&oti6858_device);
+       usb_serial_deregister_drivers(&oti6858_driver, serial_drivers);
 }
 
 module_init(oti6858_init);
index 3d8cda57ce7ac51ea9a3cf9aec600b55f80c8562..cc65d810c8f5c5ff7271397544a580279b5fb6e6 100644 (file)
@@ -104,7 +104,6 @@ static struct usb_driver pl2303_driver = {
        .id_table =     id_table,
        .suspend =      usb_serial_suspend,
        .resume =       usb_serial_resume,
-       .no_dynamic_id =        1,
        .supports_autosuspend = 1,
 };
 
@@ -834,7 +833,6 @@ static struct usb_serial_driver pl2303_device = {
                .name =         "pl2303",
        },
        .id_table =             id_table,
-       .usb_driver =           &pl2303_driver,
        .num_ports =            1,
        .bulk_in_size =         256,
        .bulk_out_size =        256,
@@ -853,28 +851,23 @@ static struct usb_serial_driver pl2303_device = {
        .release =              pl2303_release,
 };
 
+static struct usb_serial_driver * const serial_drivers[] = {
+       &pl2303_device, NULL
+};
+
 static int __init pl2303_init(void)
 {
        int retval;
 
-       retval = usb_serial_register(&pl2303_device);
-       if (retval)
-               goto failed_usb_serial_register;
-       retval = usb_register(&pl2303_driver);
-       if (retval)
-               goto failed_usb_register;
-       printk(KERN_INFO KBUILD_MODNAME ": " DRIVER_DESC "\n");
-       return 0;
-failed_usb_register:
-       usb_serial_deregister(&pl2303_device);
-failed_usb_serial_register:
+       retval = usb_serial_register_drivers(&pl2303_driver, serial_drivers);
+       if (retval == 0)
+               printk(KERN_INFO KBUILD_MODNAME ": " DRIVER_DESC "\n");
        return retval;
 }
 
 static void __exit pl2303_exit(void)
 {
-       usb_deregister(&pl2303_driver);
-       usb_serial_deregister(&pl2303_device);
+       usb_serial_deregister_drivers(&pl2303_driver, serial_drivers);
 }
 
 module_init(pl2303_init);