aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/usb/serial/metro-usb.c
diff options
context:
space:
mode:
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>2012-03-08 16:33:04 -0500
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2012-03-08 16:33:04 -0500
commit11a4f40064f38dcc369d716bea2020f6b5e290ff (patch)
treed5fb5843527ca427be6d2cfd7b9d999d71269993 /drivers/usb/serial/metro-usb.c
parent43d186fe992da93bb1dd34a7dd4534719624431c (diff)
USB: serial: metro-usb: fix up usb_serial_register calls
The usb serial core has changed how the driver is to be registered and unregistered recently. Make these changes to the driver so that it will properly build and work. Cc: Aleksey Babahin <tamerlan311@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/usb/serial/metro-usb.c')
-rw-r--r--drivers/usb/serial/metro-usb.c18
1 files changed, 7 insertions, 11 deletions
diff --git a/drivers/usb/serial/metro-usb.c b/drivers/usb/serial/metro-usb.c
index 5b8ed50e5dda..bb6838959876 100644
--- a/drivers/usb/serial/metro-usb.c
+++ b/drivers/usb/serial/metro-usb.c
@@ -92,7 +92,6 @@ static struct usb_serial_driver metrousb_device = {
92 }, 92 },
93 .description = "Metrologic USB to serial converter.", 93 .description = "Metrologic USB to serial converter.",
94 .id_table = id_table, 94 .id_table = id_table,
95 .usb_driver = &metrousb_driver,
96 .num_ports = 1, 95 .num_ports = 1,
97 .open = metrousb_open, 96 .open = metrousb_open,
98 .close = metrousb_close, 97 .close = metrousb_close,
@@ -105,6 +104,11 @@ static struct usb_serial_driver metrousb_device = {
105 .tiocmset = metrousb_tiocmset, 104 .tiocmset = metrousb_tiocmset,
106}; 105};
107 106
107static struct usb_serial_driver * const serial_drivers[] = {
108 &metrousb_device,
109 NULL,
110};
111
108/* ---------------------------------------------------------------------------------------------- 112/* ----------------------------------------------------------------------------------------------
109 Description: 113 Description:
110 Clean up any urbs and port information. 114 Clean up any urbs and port information.
@@ -163,10 +167,7 @@ static void metrousb_close (struct usb_serial_port *port)
163*/ 167*/
164static void __exit metrousb_exit(void) 168static void __exit metrousb_exit(void)
165{ 169{
166 dbg("METRO-USB - %s", __FUNCTION__); 170 usb_serial_deregister_drivers(&metrousb_driver, serial_drivers);
167
168 usb_deregister(&metrousb_driver);
169 usb_serial_deregister(&metrousb_device);
170} 171}
171 172
172/* ---------------------------------------------------------------------------------------------- 173/* ----------------------------------------------------------------------------------------------
@@ -203,15 +204,10 @@ static int __init metrousb_init(void)
203 } 204 }
204 205
205 /* Register the devices. */ 206 /* Register the devices. */
206 retval = usb_serial_register(&metrousb_device); 207 retval = usb_serial_register_drivers(&metrousb_driver, serial_drivers);
207 if (retval) 208 if (retval)
208 return retval; 209 return retval;
209 210
210 /* Register the driver. */
211 retval = usb_register(&metrousb_driver);
212 if (retval)
213 usb_serial_deregister(&metrousb_device);
214
215 printk(KERN_INFO DRIVER_DESC " : " DRIVER_VERSION); 211 printk(KERN_INFO DRIVER_DESC " : " DRIVER_VERSION);
216 212
217 return retval; 213 return retval;