]> www.infradead.org Git - users/jedix/linux-maple.git/commit
xhci: Workaround to get Intel xHCI reset working more reliably
authorRajmohan Mani <rajmohan.mani@intel.com>
Wed, 18 Nov 2015 08:48:20 +0000 (10:48 +0200)
committerChuck Anderson <chuck.anderson@oracle.com>
Thu, 10 Mar 2016 20:05:45 +0000 (12:05 -0800)
commit898611cf6c8089b7839d2b126200f2041b53b9e9
tree08782e14e22f10a660d1b7d075efea8126391347
parenta075c49467aaabca3e1f74cbbb271e71a8a9014f
xhci: Workaround to get Intel xHCI reset working more reliably

Orabug: 22805913

Existing Intel xHCI controllers require a delay of 1 mS,
after setting the CMD_RESET bit in command register, before
accessing any HC registers. This allows the HC to complete
the reset operation and be ready for HC register access.
Without this delay, the subsequent HC register access,
may result in a system hang, very rarely.

Verified CherryView / Braswell platforms go through over
5000 warm reboot cycles (which was not possible without
this patch), without any xHCI reset hang.

Signed-off-by: Rajmohan Mani <rajmohan.mani@intel.com>
Tested-by: Joe Lawrence <joe.lawrence@stratus.com>
Cc: stable <stable@vger.kernel.org>
Signed-off-by: Mathias Nyman <mathias.nyman@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
(cherry picked from commit a5964396190d0c40dd549c23848c282fffa5d1f2)
Signed-off-by: Dan Duval <dan.duval@oracle.com>
drivers/usb/host/xhci.c