summaryrefslogtreecommitdiffstats
path: root/drivers/usb/core/usb.h
diff options
context:
space:
mode:
authorYajun Deng <yajun.deng@linux.dev>2024-01-04 11:28:22 +0800
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2024-01-04 16:06:32 +0100
commit49a78b05d5ca1e23fd737747a8757b8bdc319b30 (patch)
tree9b6c082d0f6101495782b1501710d9771f0c4cea /drivers/usb/core/usb.h
parent33d4137d57997476404bc968fcc5b2ed5639a22f (diff)
downloadlinux-stable-49a78b05d5ca1e23fd737747a8757b8bdc319b30.tar.gz
linux-stable-49a78b05d5ca1e23fd737747a8757b8bdc319b30.tar.bz2
linux-stable-49a78b05d5ca1e23fd737747a8757b8bdc319b30.zip
USB: core: Use device_driver directly in struct usb_driver and usb_device_driver
There is usbdrv_wrap in struct usb_driver and usb_device_driver, it contains device_driver and for_devices. for_devices is used to distinguish between device drivers and interface drivers. Like the is_usb_device(), it tests the type of the device. We can test that if the probe of device_driver is equal to usb_probe_device in is_usb_device_driver(), and then the struct usbdrv_wrap is no longer needed. Clean up struct usbdrv_wrap, use device_driver directly in struct usb_driver and usb_device_driver. This makes the code cleaner. Signed-off-by: Yajun Deng <yajun.deng@linux.dev> Acked-by: Alan Stern <stern@rowland.harvard.edu> Link: https://lore.kernel.org/r/20240104032822.1896596-1-yajun.deng@linux.dev Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/usb/core/usb.h')
-rw-r--r--drivers/usb/core/usb.h8
1 files changed, 1 insertions, 7 deletions
diff --git a/drivers/usb/core/usb.h b/drivers/usb/core/usb.h
index 60363153fc3f..bfecb50773b6 100644
--- a/drivers/usb/core/usb.h
+++ b/drivers/usb/core/usb.h
@@ -175,13 +175,7 @@ static inline int is_root_hub(struct usb_device *udev)
return (udev->parent == NULL);
}
-/* Do the same for device drivers and interface drivers. */
-
-static inline int is_usb_device_driver(struct device_driver *drv)
-{
- return container_of(drv, struct usbdrv_wrap, driver)->
- for_devices;
-}
+extern bool is_usb_device_driver(const struct device_driver *drv);
/* for labeling diagnostics */
extern const char *usbcore_name;