aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/usb/core/driver.c9
-rw-r--r--include/linux/usb.h6
2 files changed, 10 insertions, 5 deletions
diff --git a/drivers/usb/core/driver.c b/drivers/usb/core/driver.c
index 5e65bc258e1b..bb139f06bcd6 100644
--- a/drivers/usb/core/driver.c
+++ b/drivers/usb/core/driver.c
@@ -404,8 +404,9 @@ int usb_device_match(struct device *dev, struct device_driver *drv)
404} 404}
405 405
406/** 406/**
407 * usb_register - register a USB driver 407 * usb_register_driver - register a USB driver
408 * @new_driver: USB operations for the driver 408 * @new_driver: USB operations for the driver
409 * @owner: module owner of this driver.
409 * 410 *
410 * Registers a USB driver with the USB core. The list of unattached 411 * Registers a USB driver with the USB core. The list of unattached
411 * interfaces will be rescanned whenever a new driver is added, allowing 412 * interfaces will be rescanned whenever a new driver is added, allowing
@@ -416,7 +417,7 @@ int usb_device_match(struct device *dev, struct device_driver *drv)
416 * usb_register_dev() to enable that functionality. This function no longer 417 * usb_register_dev() to enable that functionality. This function no longer
417 * takes care of that. 418 * takes care of that.
418 */ 419 */
419int usb_register(struct usb_driver *new_driver) 420int usb_register_driver(struct usb_driver *new_driver, struct module *owner)
420{ 421{
421 int retval = 0; 422 int retval = 0;
422 423
@@ -427,7 +428,7 @@ int usb_register(struct usb_driver *new_driver)
427 new_driver->driver.bus = &usb_bus_type; 428 new_driver->driver.bus = &usb_bus_type;
428 new_driver->driver.probe = usb_probe_interface; 429 new_driver->driver.probe = usb_probe_interface;
429 new_driver->driver.remove = usb_unbind_interface; 430 new_driver->driver.remove = usb_unbind_interface;
430 new_driver->driver.owner = new_driver->owner; 431 new_driver->driver.owner = owner;
431 spin_lock_init(&new_driver->dynids.lock); 432 spin_lock_init(&new_driver->dynids.lock);
432 INIT_LIST_HEAD(&new_driver->dynids.list); 433 INIT_LIST_HEAD(&new_driver->dynids.list);
433 434
@@ -447,7 +448,7 @@ int usb_register(struct usb_driver *new_driver)
447 448
448 return retval; 449 return retval;
449} 450}
450EXPORT_SYMBOL_GPL(usb_register); 451EXPORT_SYMBOL_GPL(usb_register_driver);
451 452
452/** 453/**
453 * usb_deregister - unregister a USB driver 454 * usb_deregister - unregister a USB driver
diff --git a/include/linux/usb.h b/include/linux/usb.h
index 8d5829936bc4..3d05c63451a8 100644
--- a/include/linux/usb.h
+++ b/include/linux/usb.h
@@ -625,7 +625,11 @@ struct usb_class_driver {
625 * use these in module_init()/module_exit() 625 * use these in module_init()/module_exit()
626 * and don't forget MODULE_DEVICE_TABLE(usb, ...) 626 * and don't forget MODULE_DEVICE_TABLE(usb, ...)
627 */ 627 */
628extern int usb_register(struct usb_driver *); 628int usb_register_driver(struct usb_driver *, struct module *);
629static inline int usb_register(struct usb_driver *driver)
630{
631 return usb_register_driver(driver, THIS_MODULE);
632}
629extern void usb_deregister(struct usb_driver *); 633extern void usb_deregister(struct usb_driver *);
630 634
631extern int usb_register_dev(struct usb_interface *intf, 635extern int usb_register_dev(struct usb_interface *intf,