summaryrefslogtreecommitdiff
path: root/drivers/usb
diff options
context:
space:
mode:
authorAndiry Xu <andiry.xu@amd.com>2011-08-03 16:46:48 +0800
committerSarah Sharp <sarah.a.sharp@linux.intel.com>2011-08-09 14:43:22 -0700
commit5ac04bf190e6f8b17238aef179ebd7f2bdfec919 (patch)
treeea29c2dfaf2c04e008288fe76ec0ea5ece96e4bd /drivers/usb
parente468561739fffb972d486b98f66c723936335136 (diff)
downloadlwn-5ac04bf190e6f8b17238aef179ebd7f2bdfec919.tar.gz
lwn-5ac04bf190e6f8b17238aef179ebd7f2bdfec919.zip
xHCI: fix port U3 status check condition
Fix the port U3 status check when Clear PORT_SUSPEND Feature. The port status should be masked with PORT_PLS_MASK to check if it's in U3 state. This should be backported to kernels as old as 2.6.37. Signed-off-by: Andiry Xu <andiry.xu@amd.com> Signed-off-by: Sarah Sharp <sarah.a.sharp@linux.intel.com> Cc: stable@kernel.org
Diffstat (limited to 'drivers/usb')
-rw-r--r--drivers/usb/host/xhci-hub.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/usb/host/xhci-hub.c b/drivers/usb/host/xhci-hub.c
index 0be788cc2fdb..cddcdccadbf7 100644
--- a/drivers/usb/host/xhci-hub.c
+++ b/drivers/usb/host/xhci-hub.c
@@ -664,7 +664,7 @@ int xhci_hub_control(struct usb_hcd *hcd, u16 typeReq, u16 wValue,
xhci_dbg(xhci, "PORTSC %04x\n", temp);
if (temp & PORT_RESET)
goto error;
- if (temp & XDEV_U3) {
+ if ((temp & PORT_PLS_MASK) == XDEV_U3) {
if ((temp & PORT_PE) == 0)
goto error;