]> git.baikalelectronics.ru Git - kernel.git/commit
xhci: Avoid USB autosuspend when resuming USB2 ports.
authorAnshuman Gupta <anshuman.gupta@intel.com>
Thu, 20 Sep 2018 16:13:40 +0000 (19:13 +0300)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 28 Sep 2018 13:04:45 +0000 (15:04 +0200)
commit46f5456acab256041b87c784dd2a6392c19e3ffc
treea52990a0b15d032da2e471caca42e3a80395ecdd
parent8fe31e0bed4d83694b1ae1f589d3c866e2ef5d2e
xhci: Avoid USB autosuspend when resuming USB2 ports.

When USB bus host controller root hub resumes from autosuspend,
it immediately tries to enter auto-suspend, but there can be a
scenario when root hub is resuming its usb2 ports, in that particular
case USB host controller auto suspend fails since it is busy
to resuming its usb2 ports.

This makes multiple failed cycles of auto-suspend until all usb2
ports of host controller root hub do not resume.

This patch uses USB core framework usb_hcd_start_port_resume,
usb_hcd_end_port_resume API's in order to  autoresume/autosuspend
root hub properly.

Signed-off-by: Anshuman Gupta <anshuman.gupta@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
drivers/usb/host/xhci-ring.c