usb: dwc2: Add SPLIT INTERRUPT transaction support
authorStefan Brüns <stefan.bruens@rwth-aachen.de>
Sun, 17 Jan 2016 03:09:56 +0000 (04:09 +0100)
committerMarek Vasut <marex@denx.de>
Sat, 23 Jan 2016 15:21:11 +0000 (16:21 +0100)
commitd2ff51b372a6800fcf1394fc2ca9821d86b15335
treed7524ea5df1b698bb0f548c00a88437c18780e73
parentb54e44705258c0443310ed12b8982707d7992fa8
usb: dwc2: Add SPLIT INTERRUPT transaction support

CSPLITs for INTERRUPT transactions have to be scheduled in each microframe
following the SSPLIT. INTERRUPT transfers are executed in the next even/
odd microframe depending on the HCCHAR_ODDFRM flag.

As there are no handshakes for INTERRUPT SSPLITs the SSPLIT may have
failed (transport error) without the error being detected by the host
driver. If the last CSPLIT is not received within 4 microframes after the
SSPLIT there was a transaction error and the complete transaction has
to be restarted.

Signed-off-by: Stefan Brüns <stefan.bruens@rwth-aachen.de>
drivers/usb/host/dwc2.c
drivers/usb/host/dwc2.h