xhci: report U3 when link is in resume state
authorZhuang Jin Can <jin.can.zhuang@intel.com>
Tue, 21 Jul 2015 14:20:29 +0000 (17:20 +0300)
committerDanny Wood <danwood76@gmail.com>
Tue, 29 Jan 2019 13:09:38 +0000 (13:09 +0000)
commit9fd81f1718cee20146976e43b678322bca703b54
tree24837dec090113dfc1e3d82ee1b55f4d4de02cb0
parent4caa437f4effd566dd2a31a09f784e768571c9fe
xhci: report U3 when link is in resume state

commit 243292a2ad3dc365849b820a64868927168894ac upstream.

xhci_hub_report_usb3_link_state() returns pls as U0 when the link
is in resume state, and this causes usb core to think the link is in
U0 while actually it's in resume state. When usb core transfers
control request on the link, it fails with TRB error as the link
is not ready for transfer.

To fix the issue, report U3 when the link is in resume state, thus
usb core knows the link it's not ready for transfer.

Signed-off-by: Zhuang Jin Can <jin.can.zhuang@intel.com>
Signed-off-by: Mathias Nyman <mathias.nyman@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/usb/host/xhci-hub.c