diff options
author | Alan Stern <stern@rowland.harvard.edu> | 2012-02-23 14:57:32 -0500 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2012-02-24 15:39:21 -0500 |
commit | 29618e9fb5507b9fcf07f739a8506a3640495945 (patch) | |
tree | d5b05698811d39a6068bd8bfae99e04cb6da4e8f /drivers/usb/serial/whiteheat.c | |
parent | d860322f34e4a53f347b1aeae23d5b72f1e91b8c (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.c | 32 |
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 | ||
155 | static struct usb_serial_driver * const serial_drivers[] = { | ||
156 | &whiteheat_fake_device, &whiteheat_device, NULL | ||
157 | }; | ||
158 | 158 | ||
159 | struct whiteheat_command_private { | 159 | struct whiteheat_command_private { |
160 | struct mutex mutex; | 160 | struct mutex mutex; |
@@ -1461,32 +1461,18 @@ out: | |||
1461 | static int __init whiteheat_init(void) | 1461 | static 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; | ||
1476 | failed_usb_register: | ||
1477 | usb_serial_deregister(&whiteheat_device); | ||
1478 | failed_device_register: | ||
1479 | usb_serial_deregister(&whiteheat_fake_device); | ||
1480 | failed_fake_register: | ||
1481 | return retval; | 1469 | return retval; |
1482 | } | 1470 | } |
1483 | 1471 | ||
1484 | 1472 | ||
1485 | static void __exit whiteheat_exit(void) | 1473 | static 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 | ||