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:
Родитель
91148dbad8
Коммит
b71b283e3d
|
@ -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.owner = owner;
|
||||
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);
|
||||
INIT_LIST_HEAD(&new_driver->dynids.list);
|
||||
|
||||
|
|
|
@ -1151,6 +1151,8 @@ struct usbdrv_wrap {
|
|||
* @id_table: USB drivers use ID table to support hotplugging.
|
||||
* Export this with MODULE_DEVICE_TABLE(usb,...). This must be set
|
||||
* 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
|
||||
* ids for this driver.
|
||||
* @drvwrap: Driver-model core structure wrapper.
|
||||
|
@ -1198,6 +1200,7 @@ struct usb_driver {
|
|||
int (*post_reset)(struct usb_interface *intf);
|
||||
|
||||
const struct usb_device_id *id_table;
|
||||
const struct attribute_group **dev_groups;
|
||||
|
||||
struct usb_dynids dynids;
|
||||
struct usbdrv_wrap drvwrap;
|
||||
|
|
Загрузка…
Ссылка в новой задаче