[PATCH 6/9] usb-serial: use new registration API in [n-p]* drivers

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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@xxxxxxxxxxxxxxxxxxx>

---

 drivers/usb/serial/navman.c  |   19 ++++++-------------
 drivers/usb/serial/omninet.c |   26 ++++++++++----------------
 drivers/usb/serial/opticon.c |   19 ++++++-------------
 drivers/usb/serial/option.c  |   29 ++++++++++-------------------
 drivers/usb/serial/oti6858.c |   19 ++++++-------------
 drivers/usb/serial/pl2303.c  |   23 ++++++++---------------
 6 files changed, 46 insertions(+), 89 deletions(-)

Index: usb-3.3/drivers/usb/serial/navman.c
===================================================================
--- usb-3.3.orig/drivers/usb/serial/navman.c
+++ usb-3.3/drivers/usb/serial/navman.c
@@ -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_d
 		.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_d
 	.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: usb-3.3/drivers/usb/serial/omninet.c
===================================================================
--- usb-3.3.orig/drivers/usb/serial/omninet.c
+++ usb-3.3/drivers/usb/serial/omninet.c
@@ -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_om
 		.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_om
 	.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_s
 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: usb-3.3/drivers/usb/serial/opticon.c
===================================================================
--- usb-3.3.orig/drivers/usb/serial/opticon.c
+++ usb-3.3/drivers/usb/serial/opticon.c
@@ -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_
 		.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_
 	.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: usb-3.3/drivers/usb/serial/option.c
===================================================================
--- usb-3.3.orig/drivers/usb/serial/option.c
+++ usb-3.3/drivers/usb/serial/option.c
@@ -1329,7 +1329,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
@@ -1342,7 +1341,6 @@ static struct usb_serial_driver option_1
 		.name =		"option1",
 	},
 	.description       = "GSM modem (1-port)",
-	.usb_driver        = &option_driver,
 	.id_table          = option_ids,
 	.num_ports         = 1,
 	.probe             = option_probe,
@@ -1366,6 +1364,10 @@ static struct usb_serial_driver option_1
 #endif
 };
 
+static struct usb_serial_driver * const serial_drivers[] = {
+	&option_1port_device, NULL
+};
+
 static bool debug;
 
 /* per port private data */
@@ -1401,28 +1403,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: usb-3.3/drivers/usb/serial/oti6858.c
===================================================================
--- usb-3.3.orig/drivers/usb/serial/oti6858.c
+++ usb-3.3/drivers/usb/serial/oti6858.c
@@ -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_
 		.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_
 	.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(
 
 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: usb-3.3/drivers/usb/serial/pl2303.c
===================================================================
--- usb-3.3.orig/drivers/usb/serial/pl2303.c
+++ usb-3.3/drivers/usb/serial/pl2303.c
@@ -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_d
 		.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_d
 	.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);

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux