USB: xhci: Add reset RunStop bit on resume quirk for DWC3 controller
DWC_usb3 controller has an internal bus interval counter for tracking the
microframes. If all of the USB 3.0 and 2.0 ports are in either suspended
or disconnected state, the counter is stopped. Whenever a suspended device
is disconnected, or a new device is connected, or the root port exits the
suspend state, the counter is restarted. Because of an error, when multiple
connects/disconnects are performed and the suspend_clk frequency is less
than the ref_clk frequency, the counter does not increment correctly after
a suspended device is disconnected, or a new device is connected or the
root port exits the suspend state. Workaround is if all the 2.0 and 3.0
ports are either in suspended or disconnect state and port status change
event of device disconnect or port status change event of super speed
device connect is reported from any of the root ports, clear and set the
RunStop bit in USBCMD register.
CRs-Fixed: 513142
Change-Id: I83f1687339c3e07377e506d19d8253638b455452
Signed-off-by:
Vijayavardhan Vennapusa <vvreddy@codeaurora.org>
Loading
Please register or sign in to comment