usb: gadget: net2280: Add workaround for AB chip Errata 11
authorBenjamin Herrenschmidt <benh@kernel.crashing.org>
Fri, 30 Aug 2019 03:56:14 +0000 (13:56 +1000)
committerFelipe Balbi <felipe.balbi@linux.intel.com>
Fri, 30 Aug 2019 06:27:33 +0000 (09:27 +0300)
commit18a93cd38be3e69ac5b067c570a78a369b79e31d
treea1f6264e618b6fcb15b97074733b9e5fc8e18148
parentec8ca8a3489cc87ca43a865af7e7393690841810
usb: gadget: net2280: Add workaround for AB chip Errata 11

The errata description is:

Workaround for Default Duration of LFPS Handshake Signaling for
Device-Initiated U1 Exit is too short.

The default duration of the LFPS handshake generated by USB3380 for a device-initiated U1-exit may not be
long enough for certain SuperSpeed downstream ports (SuperSpeed hubs/hosts) to recognize. This could lead
to USB3380 entering the recovery state pre-maturely and ending up in the SS.Inactive state.

I have observed various enumeration failures, seemingly related to
lost transactions or SETUP status phases on modern hosts (typically
thunderbolt capable systems) without this workaround.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Felipe Balbi <felipe.balbi@linux.intel.com>
drivers/usb/gadget/udc/net2280.c