linux/drivers/usb/core
Mathias Nyman 890dae8867 xhci: Enable LPM support only for hardwired or BESL devices
Some usb3 devices falsely claim they support usb2 hardware Link PM
when connected to a usb2 port. We only trust hardwired devices
or devices with the later BESL LPM support to be LPM enabled as default.

[Note: Sarah re-worked the original patch to move the code into the USB
core, and updated it to check whether the USB device supports BESL,
instead of checking if the xHCI port it's connected to supports BESL
encoding.]

This patch should be backported to kernels as old as 3.11, that
contain the commit a558ccdcc7 "usb: xhci:
add USB2 Link power management BESL support".  Without this fix, some
USB 3.0 devices will not enumerate or work properly under USB 2.0 ports
on Haswell-ULT systems.

Signed-off-by: Mathias Nyman <mathias.nyman@linux.intel.com>
Signed-off-by: Sarah Sharp <sarah.a.sharp@linux.intel.com>
Cc: stable@vger.kernel.org
2013-10-16 12:24:20 -07:00
..
buffer.c usb: fix some scripts/kernel-doc warnings 2013-08-03 11:30:14 +08:00
config.c usb: config->desc.bLength may not exceed amount of data returned by the device 2013-08-12 12:24:27 -07:00
devices.c Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs 2013-02-26 20:16:07 -08:00
devio.c Merge 3.12-rc3 into usb-next 2013-09-29 18:45:55 -07:00
driver.c usb: Don't enable USB 2.0 Link PM by default. 2013-10-16 12:24:19 -07:00
endpoint.c USB: core: be specific about attribute permissions 2013-08-25 15:12:03 -07:00
file.c drivers: usb: core: file.c: moved asterisk to variable name 2013-10-11 17:06:11 -07:00
generic.c USB: avoid error messages when a device is disconnected 2013-03-28 11:05:52 -07:00
hcd-pci.c usb: core: implement AMD remote wakeup quirk 2013-09-25 17:24:37 -07:00
hcd.c usb/hcd: remove unnecessary local_irq_save 2013-10-14 11:09:12 -07:00
hub.c xhci: Enable LPM support only for hardwired or BESL devices 2013-10-16 12:24:20 -07:00
hub.h USB: global suspend and remote wakeup don't mix 2013-07-16 15:33:02 -07:00
Kconfig USB: remove remaining instances of USB_SUSPEND 2013-05-15 13:44:44 -04:00
Makefile usb: Add driver/usb/core/(port.c,hub.h) files 2013-01-18 15:49:00 -08:00
message.c usb: fix some scripts/kernel-doc warnings 2013-08-03 11:30:14 +08:00
notify.c usb: Add export.h for EXPORT_SYMBOL/THIS_MODULE where needed 2011-10-31 19:31:25 -04:00
otg_whitelist.h
port.c USB: core: be specific about attribute permissions 2013-08-25 15:12:03 -07:00
quirks.c usb: core: usb_amd_resume_quirk() can be static 2013-09-26 11:56:50 -07:00
sysfs.c usb: Don't enable USB 2.0 Link PM by default. 2013-10-16 12:24:19 -07:00
urb.c usb-anchor: Delay usb_wait_anchor_empty_timeout wake up till completion is done 2013-10-11 16:33:58 -07:00
usb-acpi.c usb/acpi: binding xhci root hub usb port with ACPI 2013-03-25 10:39:17 -07:00
usb.c drivers: usb: core: {file,hub,sysfs,usb}.c: Whitespace fixes 2013-10-11 17:02:37 -07:00
usb.h usbcore: set lpm_capable field for LPM capable root hubs 2013-09-17 09:49:24 -07:00