diff options
author | Hans de Goede <hdegoede@redhat.com> | 2010-03-29 06:03:17 -0400 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2010-05-20 16:21:32 -0400 |
commit | 317149c655defedfaf432143b86a720cfc12a424 (patch) | |
tree | c9834f9813e14b595c93da5d7ceb718af39d1c5d /drivers/usb/core/quirks.c | |
parent | 7f0ae3a8eeb7f231dc99cee7c871ba64e07ebefe (diff) |
USB: Add a new quirk: USB_QUIRK_HONOR_BNUMINTERFACES
Add a new quirk USB_QUIRK_HONOR_BNUMINTERFACES, when this quirk is
set and a device has more interface descriptors in a configuration
then it claims to have in config->bNumInterfaces, ignore all additional
interfaces.
This is needed for devices which try to hide unused interfaces by only
lowering config->bNumInterfaces, and which can't handle if you try to talk
to the "hidden" interfaces.
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Acked-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/usb/core/quirks.c')
-rw-r--r-- | drivers/usb/core/quirks.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/usb/core/quirks.c b/drivers/usb/core/quirks.c index f073c5cb4e7..f22d03df8b1 100644 --- a/drivers/usb/core/quirks.c +++ b/drivers/usb/core/quirks.c | |||
@@ -71,6 +71,10 @@ static const struct usb_device_id usb_quirk_list[] = { | |||
71 | /* SKYMEDI USB_DRIVE */ | 71 | /* SKYMEDI USB_DRIVE */ |
72 | { USB_DEVICE(0x1516, 0x8628), .driver_info = USB_QUIRK_RESET_RESUME }, | 72 | { USB_DEVICE(0x1516, 0x8628), .driver_info = USB_QUIRK_RESET_RESUME }, |
73 | 73 | ||
74 | /* BUILDWIN Photo Frame */ | ||
75 | { USB_DEVICE(0x1908, 0x1315), .driver_info = | ||
76 | USB_QUIRK_HONOR_BNUMINTERFACES }, | ||
77 | |||
74 | /* INTEL VALUE SSD */ | 78 | /* INTEL VALUE SSD */ |
75 | { USB_DEVICE(0x8086, 0xf1a5), .driver_info = USB_QUIRK_RESET_RESUME }, | 79 | { USB_DEVICE(0x8086, 0xf1a5), .driver_info = USB_QUIRK_RESET_RESUME }, |
76 | 80 | ||