linux/drivers/usb/core
Sarah Sharp 7d9d6c8657 USB: Fix LPM disable count mismatch on driver unbind.
commit 249719121b upstream.

When a user runs `echo 0 > bConfigurationValue` for a USB 3.0 device,
usb_disable_device() is called.  This function disables all drivers,
deallocates interfaces, and sets the device configuration value to 0
(unconfigured).

With the new scheme to ensure that unconfigured devices have LPM
disabled, usb_disable_device() must call usb_unlocked_disable_lpm() once
it unconfigures the device.

This commit should be backported to kernels as old as 3.5, that contain
the commit 8306095fd2 "USB: Disable USB
3.0 LPM in critical sections."

Signed-off-by: Sarah Sharp <sarah.a.sharp@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
History 2012-08-09 08:22:50 -07:00
..
buffer.c USB: Core: Fix minor coding style issues 2011-01-22 19:35:39 -08:00
config.c usbcore: get BOS descriptor set 2011-09-26 15:51:08 -07:00
devices.c Revert "usb: move struct usb_device->children to struct usb_hub_port->child" 2012-05-14 09:20:37 -07:00
devio.c usbdevfs: Correct amount of data copied to user in processcompl_compat 2012-08-09 08:22:40 -07:00
driver.c USB: Disable USB 3.0 LPM in critical sections. 2012-05-18 15:41:59 -07:00
endpoint.c USB: use usb_endpoint_maxp() instead of le16_to_cpu() 2011-08-23 09:47:40 -07:00
file.c USB: file.c: remove dbg() usage 2012-05-01 21:33:35 -07:00
generic.c USB: accept RNDIS configs if there's no alternative 2010-08-10 14:35:43 -07:00
hcd-pci.c USB: add NO_D3_DURING_SLEEP flag and revert 151b612847 2012-06-13 13:11:39 -07:00
hcd.c USB: Make sure to fetch the BOS desc for roothubs. 2012-05-18 15:41:53 -07:00
hub.c USB: Fix LPM disable/enable during device reset. 2012-08-09 08:22:50 -07:00
Kconfig usb: Kconfig: remove unneeded default value 2012-05-14 08:49:50 -07:00
Makefile usb: Bind devices to ACPI devices when possible 2012-05-11 17:06:13 -07:00
message.c USB: Fix LPM disable count mismatch on driver unbind. 2012-08-09 08:22:50 -07: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 USB: fix codingstyle issues in drivers/usb/core/*.h 2008-02-01 14:35:07 -08:00
quirks.c usb: add USB_QUIRK_RESET_RESUME for M-Audio 88es 2012-04-30 10:26:42 -04:00
sysfs.c sysfs: get rid of some lockdep false positives 2012-05-14 12:19:56 -07:00
urb.c usbhid: prevent deadlock during timeout 2012-05-01 13:22:13 -04:00
usb-acpi.c usb: Set device removable state based on ACPI USB data 2012-05-11 17:07:02 -07:00
usb.c USB: Disable LPM while the device is unconfigured. 2012-08-09 08:22:50 -07:00
usb.h usb: Bind devices to ACPI devices when possible 2012-05-11 17:06:13 -07:00