diff options
author | Ran Wang <ran.wang_1@nxp.com> | 2017-09-27 07:03:18 (GMT) |
---|---|---|
committer | Xie Xiaobo <xiaobo.xie@nxp.com> | 2017-12-12 07:32:32 (GMT) |
commit | 945c9c53125dc1b404c232a37889f1e7b77bcc6c (patch) | |
tree | 69c323167147e6393d9c3b3d1c36e438dcbbfbba /kernel/backtracetest.c | |
parent | 0a7b5391ea4efbebd64504ad5108e554e988c4b6 (diff) | |
download | linux-945c9c53125dc1b404c232a37889f1e7b77bcc6c.tar.xz |
usb: dwc3: workaround: disable device-initiated U1/U2
Issue: When the USB controller is configured as a USB device
mode, the device initiates low power when an ACK is pending for a
data packet (DP). When operating in SuperSpeed mode and when the
internal condition for low power (u1/u2) is satisfied, the device
initiates u1/u2 even though it has just received a DPH of the DP
header (DPH). This causes the link to enter and exit low power before
the device sends an ACK for the DP. This behavior can cause a
transaction timeout on the host for the DP. Impact: Depending on the
host transaction timeout value, the host may timeout on the
transaction and the host retries the transfer. If the same issue
happens again, this could result in the host resetting the device and
re-enumerating.
Workaround: Disable USB_DCTL (InitU1Ena, InitU2Ena) bits. As a
result,the device does not initiate lowpower requests; however,
it can still accept low-power requests from the host/hub and enter
low power.
Signed-off-by: Ran Wang <ran.wang_1@nxp.com>
Diffstat (limited to 'kernel/backtracetest.c')
0 files changed, 0 insertions, 0 deletions