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>
This commit is contained in:
Greg Kroah-Hartman 2012-03-08 13:33:04 -08:00
parent 43d186fe99
commit 11a4f40064

View file

@ -92,7 +92,6 @@ static struct usb_serial_driver metrousb_device = {
},
.description = "Metrologic USB to serial converter.",
.id_table = id_table,
.usb_driver = &metrousb_driver,
.num_ports = 1,
.open = metrousb_open,
.close = metrousb_close,
@ -105,6 +104,11 @@ static struct usb_serial_driver metrousb_device = {
.tiocmset = metrousb_tiocmset,
};
static struct usb_serial_driver * const serial_drivers[] = {
&metrousb_device,
NULL,
};
/* ----------------------------------------------------------------------------------------------
Description:
Clean up any urbs and port information.
@ -163,10 +167,7 @@ static void metrousb_close (struct usb_serial_port *port)
*/
static void __exit metrousb_exit(void)
{
dbg("METRO-USB - %s", __FUNCTION__);
usb_deregister(&metrousb_driver);
usb_serial_deregister(&metrousb_device);
usb_serial_deregister_drivers(&metrousb_driver, serial_drivers);
}
/* ----------------------------------------------------------------------------------------------
@ -203,15 +204,10 @@ static int __init metrousb_init(void)
}
/* Register the devices. */
retval = usb_serial_register(&metrousb_device);
retval = usb_serial_register_drivers(&metrousb_driver, serial_drivers);
if (retval)
return retval;
/* Register the driver. */
retval = usb_register(&metrousb_driver);
if (retval)
usb_serial_deregister(&metrousb_device);
printk(KERN_INFO DRIVER_DESC " : " DRIVER_VERSION);
return retval;