aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/usb/core/usb.h
diff options
context:
space:
mode:
authorJohan Hovold <johan@kernel.org>2020-02-03 16:38:28 +0100
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2020-02-10 11:14:22 -0800
commit73f8bda9b5dc1c69df2bc55c0cbb24461a6391a9 (patch)
tree322a38a4d51b138cadb84fc659a755ee8a3b8525 /drivers/usb/core/usb.h
parentusb: dwc3: debug: fix string position formatting mixup with ret and len (diff)
downloadlinux-dev-73f8bda9b5dc1c69df2bc55c0cbb24461a6391a9.tar.xz
linux-dev-73f8bda9b5dc1c69df2bc55c0cbb24461a6391a9.zip
USB: core: add endpoint-blacklist quirk
Add a new device quirk that can be used to blacklist endpoints. Since commit 3e4f8e21c4f2 ("USB: core: fix check for duplicate endpoints") USB core ignores any duplicate endpoints found during descriptor parsing. In order to handle devices where the first interfaces with duplicate endpoints are the ones that should have their endpoints ignored, we need to add a blacklist. Tested-by: edes <edes@gmx.net> Cc: stable <stable@vger.kernel.org> Signed-off-by: Johan Hovold <johan@kernel.org> Link: https://lore.kernel.org/r/20200203153830.26394-2-johan@kernel.org Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/usb/core/usb.h')
-rw-r--r--drivers/usb/core/usb.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/usb/core/usb.h b/drivers/usb/core/usb.h
index cf4783cf661a..3ad0ee57e859 100644
--- a/drivers/usb/core/usb.h
+++ b/drivers/usb/core/usb.h
@@ -37,6 +37,9 @@ extern void usb_authorize_interface(struct usb_interface *);
extern void usb_detect_quirks(struct usb_device *udev);
extern void usb_detect_interface_quirks(struct usb_device *udev);
extern void usb_release_quirk_list(void);
+extern bool usb_endpoint_is_blacklisted(struct usb_device *udev,
+ struct usb_host_interface *intf,
+ struct usb_endpoint_descriptor *epd);
extern int usb_remove_device(struct usb_device *udev);
extern int usb_get_device_descriptor(struct usb_device *dev,