extern void usb_deregister(struct usb_driver *);
 
+/**
+ * module_usb_driver() - Helper macro for registering a USB driver
+ * @__usb_driver: usb_driver struct
+ *
+ * Helper macro for USB drivers which do not do anything special in module
+ * init/exit. This eliminates a lot of boilerplate. Each module may only
+ * use this macro once, and calling it replaces module_init() and module_exit()
+ */
+#define module_usb_driver(__usb_driver) \
+       module_driver(__usb_driver, usb_register, \
+                      usb_deregister)
+
 extern int usb_register_device_driver(struct usb_device_driver *,
                        struct module *);
 extern void usb_deregister_device_driver(struct usb_device_driver *);