usb: xhci: Disable runtime PM suspend for quirky controllers
authorShawn Nematbakhsh <shawnn@chromium.org>
Mon, 19 Aug 2013 17:36:13 +0000 (10:36 -0700)
committerSarah Sharp <sarah.a.sharp@linux.intel.com>
Tue, 27 Aug 2013 15:50:37 +0000 (08:50 -0700)
commitc8476fb855434c733099079063990e5bfa7ecad6
treedba6e2164c6d4a75a7a5bf4b1ac29e2f7adb8c0a
parent154547c4fe0fbe92185e69a6cdc2b0502b361995
usb: xhci: Disable runtime PM suspend for quirky controllers

If a USB controller with XHCI_RESET_ON_RESUME goes to runtime suspend,
a reset will be performed upon runtime resume. Any previously suspended
devices attached to the controller will be re-enumerated at this time.
This will cause problems, for example, if an open system call on the
device triggered the resume (the open call will fail).

Note that this change is only relevant when persist_enabled is not set
for USB devices.

This patch should be backported to kernels as old as 3.0, that
contain the commit c877b3b2ad5cb9d4fe523c5496185cc328ff3ae9 "xhci: Add
reset on resume quirk for asrock p67 host".

Signed-off-by: Shawn Nematbakhsh <shawnn@chromium.org>
Signed-off-by: Sarah Sharp <sarah.a.sharp@linux.intel.com>
Cc: stable@vger.kernel.org
drivers/usb/host/xhci.c