aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/usb/serial/whiteheat.c
diff options
context:
space:
mode:
authorAlan Stern <stern@rowland.harvard.edu>2012-02-23 14:57:32 -0500
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2012-02-24 15:39:21 -0500
commit29618e9fb5507b9fcf07f739a8506a3640495945 (patch)
treed5b05698811d39a6068bd8bfae99e04cb6da4e8f /drivers/usb/serial/whiteheat.c
parentd860322f34e4a53f347b1aeae23d5b72f1e91b8c (diff)
usb-serial: use new registration API in [t-z]* drivers
This patch (as1529) modifies the following usb-serial drivers to utilize the new usb_serial_{de}register_drivers() routines: ti_usb_3410_5052, usb_debug, visor, vivopay-serial, whiteheat, and zio. Signed-off-by: Alan Stern <stern@rowland.harvard.edu> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/usb/serial/whiteheat.c')
-rw-r--r--drivers/usb/serial/whiteheat.c32
1 files changed, 9 insertions, 23 deletions
diff --git a/drivers/usb/serial/whiteheat.c b/drivers/usb/serial/whiteheat.c
index 007cf3a2481a..a29be37a3a67 100644
--- a/drivers/usb/serial/whiteheat.c
+++ b/drivers/usb/serial/whiteheat.c
@@ -83,7 +83,6 @@ static struct usb_driver whiteheat_driver = {
83 .probe = usb_serial_probe, 83 .probe = usb_serial_probe,
84 .disconnect = usb_serial_disconnect, 84 .disconnect = usb_serial_disconnect,
85 .id_table = id_table_combined, 85 .id_table = id_table_combined,
86 .no_dynamic_id = 1,
87}; 86};
88 87
89/* function prototypes for the Connect Tech WhiteHEAT prerenumeration device */ 88/* function prototypes for the Connect Tech WhiteHEAT prerenumeration device */
@@ -121,7 +120,6 @@ static struct usb_serial_driver whiteheat_fake_device = {
121 .name = "whiteheatnofirm", 120 .name = "whiteheatnofirm",
122 }, 121 },
123 .description = "Connect Tech - WhiteHEAT - (prerenumeration)", 122 .description = "Connect Tech - WhiteHEAT - (prerenumeration)",
124 .usb_driver = &whiteheat_driver,
125 .id_table = id_table_prerenumeration, 123 .id_table = id_table_prerenumeration,
126 .num_ports = 1, 124 .num_ports = 1,
127 .probe = whiteheat_firmware_download, 125 .probe = whiteheat_firmware_download,
@@ -134,7 +132,6 @@ static struct usb_serial_driver whiteheat_device = {
134 .name = "whiteheat", 132 .name = "whiteheat",
135 }, 133 },
136 .description = "Connect Tech - WhiteHEAT", 134 .description = "Connect Tech - WhiteHEAT",
137 .usb_driver = &whiteheat_driver,
138 .id_table = id_table_std, 135 .id_table = id_table_std,
139 .num_ports = 4, 136 .num_ports = 4,
140 .attach = whiteheat_attach, 137 .attach = whiteheat_attach,
@@ -155,6 +152,9 @@ static struct usb_serial_driver whiteheat_device = {
155 .write_bulk_callback = whiteheat_write_callback, 152 .write_bulk_callback = whiteheat_write_callback,
156}; 153};
157 154
155static struct usb_serial_driver * const serial_drivers[] = {
156 &whiteheat_fake_device, &whiteheat_device, NULL
157};
158 158
159struct whiteheat_command_private { 159struct whiteheat_command_private {
160 struct mutex mutex; 160 struct mutex mutex;
@@ -1461,32 +1461,18 @@ out:
1461static int __init whiteheat_init(void) 1461static int __init whiteheat_init(void)
1462{ 1462{
1463 int retval; 1463 int retval;
1464 retval = usb_serial_register(&whiteheat_fake_device); 1464
1465 if (retval) 1465 retval = usb_serial_register_drivers(&whiteheat_driver, serial_drivers);
1466 goto failed_fake_register; 1466 if (retval == 0)
1467 retval = usb_serial_register(&whiteheat_device); 1467 printk(KERN_INFO KBUILD_MODNAME ": " DRIVER_VERSION ":"
1468 if (retval) 1468 DRIVER_DESC "\n");
1469 goto failed_device_register;
1470 retval = usb_register(&whiteheat_driver);
1471 if (retval)
1472 goto failed_usb_register;
1473 printk(KERN_INFO KBUILD_MODNAME ": " DRIVER_VERSION ":"
1474 DRIVER_DESC "\n");
1475 return 0;
1476failed_usb_register:
1477 usb_serial_deregister(&whiteheat_device);
1478failed_device_register:
1479 usb_serial_deregister(&whiteheat_fake_device);
1480failed_fake_register:
1481 return retval; 1469 return retval;
1482} 1470}
1483 1471
1484 1472
1485static void __exit whiteheat_exit(void) 1473static void __exit whiteheat_exit(void)
1486{ 1474{
1487 usb_deregister(&whiteheat_driver); 1475 usb_serial_deregister_drivers(&whiteheat_driver, serial_drivers);
1488 usb_serial_deregister(&whiteheat_fake_device);
1489 usb_serial_deregister(&whiteheat_device);
1490} 1476}
1491 1477
1492 1478