USB: add support for dev_groups to struct usb_driver
Now that the driver core supports dev_groups for individual drivers, expose that pointer to struct usb_driver to make it easier for USB drivers to also use it. Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Link: https://lore.kernel.org/r/20190806144502.17792-2-gregkh@linuxfoundation.org Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
91148dbad8
commit
b71b283e3d
2 changed files with 4 additions and 0 deletions
|
@ -954,6 +954,7 @@ int usb_register_driver(struct usb_driver *new_driver, struct module *owner,
|
||||||
new_driver->drvwrap.driver.remove = usb_unbind_interface;
|
new_driver->drvwrap.driver.remove = usb_unbind_interface;
|
||||||
new_driver->drvwrap.driver.owner = owner;
|
new_driver->drvwrap.driver.owner = owner;
|
||||||
new_driver->drvwrap.driver.mod_name = mod_name;
|
new_driver->drvwrap.driver.mod_name = mod_name;
|
||||||
|
new_driver->drvwrap.driver.dev_groups = new_driver->dev_groups;
|
||||||
spin_lock_init(&new_driver->dynids.lock);
|
spin_lock_init(&new_driver->dynids.lock);
|
||||||
INIT_LIST_HEAD(&new_driver->dynids.list);
|
INIT_LIST_HEAD(&new_driver->dynids.list);
|
||||||
|
|
||||||
|
|
|
@ -1151,6 +1151,8 @@ struct usbdrv_wrap {
|
||||||
* @id_table: USB drivers use ID table to support hotplugging.
|
* @id_table: USB drivers use ID table to support hotplugging.
|
||||||
* Export this with MODULE_DEVICE_TABLE(usb,...). This must be set
|
* Export this with MODULE_DEVICE_TABLE(usb,...). This must be set
|
||||||
* or your driver's probe function will never get called.
|
* or your driver's probe function will never get called.
|
||||||
|
* @dev_groups: Attributes attached to the device that will be created once it
|
||||||
|
* is bound to the driver.
|
||||||
* @dynids: used internally to hold the list of dynamically added device
|
* @dynids: used internally to hold the list of dynamically added device
|
||||||
* ids for this driver.
|
* ids for this driver.
|
||||||
* @drvwrap: Driver-model core structure wrapper.
|
* @drvwrap: Driver-model core structure wrapper.
|
||||||
|
@ -1198,6 +1200,7 @@ struct usb_driver {
|
||||||
int (*post_reset)(struct usb_interface *intf);
|
int (*post_reset)(struct usb_interface *intf);
|
||||||
|
|
||||||
const struct usb_device_id *id_table;
|
const struct usb_device_id *id_table;
|
||||||
|
const struct attribute_group **dev_groups;
|
||||||
|
|
||||||
struct usb_dynids dynids;
|
struct usb_dynids dynids;
|
||||||
struct usbdrv_wrap drvwrap;
|
struct usbdrv_wrap drvwrap;
|
||||||
|
|
Loading…
Add table
Reference in a new issue