aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/usb/core/hub.c
diff options
context:
space:
mode:
authorAndiry Xu <andiry.xu@amd.com>2011-09-23 14:19:47 -0700
committerGreg Kroah-Hartman <gregkh@suse.de>2011-09-26 15:51:08 -0700
commit3148bf041d169a083aa31bd69bedd5bfb7ffe215 (patch)
tree0a6620dc6e2da37c291c195de78819d2e306296f /drivers/usb/core/hub.c
parent5023829969f56b78a16da94f34c605bbbb344018 (diff)
usbcore: get BOS descriptor set
This commit gets BOS(Binary Device Object Store) descriptor set for Super Speed devices and High Speed devices which support BOS descriptor. BOS descriptor is used to report additional USB device-level capabilities that are not reported via the Device descriptor. By getting BOS descriptor set, driver can check device's device-level capability such as LPM capability. Signed-off-by: Andiry Xu <andiry.xu@amd.com> Signed-off-by: Sarah Sharp <sarah.a.sharp@linux.intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/usb/core/hub.c')
-rw-r--r--drivers/usb/core/hub.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/usb/core/hub.c b/drivers/usb/core/hub.c
index 1c155123c32..7a2514322bf 100644
--- a/drivers/usb/core/hub.c
+++ b/drivers/usb/core/hub.c
@@ -3083,6 +3083,9 @@ hub_port_init (struct usb_hub *hub, struct usb_device *udev, int port1,
goto fail;
}
+ if (udev->wusb == 0 && le16_to_cpu(udev->descriptor.bcdUSB) >= 0x0201)
+ usb_get_bos_descriptor(udev);
+
retval = 0;
/* notify HCD that we have a device connected and addressed */
if (hcd->driver->update_device)