usb: dwc3: gadget: cope with XferNotReady before usb_ep_queue()

If XferNotReady comes before usb_ep_queue() we will
set our PENDING request flag and wait for a
request. However, originally, we were assuming
usb_ep_queue() would always happen before our first
XferNotReady and that causes a corner case where we
could try to issue ENDTRANSFER command before
STARTTRANSFER.

Let's fix that by tracking endpoints which have been
started.

Reported-by: Janusz Dziedzic <januszx.dziedzic@intel.com>
Signed-off-by: Felipe Balbi <felipe.balbi@linux.intel.com>
Git-commit: 6cb2e4e3de10893f38dbf3923a9cc50c76548a89
Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
[sallenki@codeaurora.org: resolved minor conflicts]
Signed-off-by: Sriharsha Allenki <sallenki@codeaurora.org>
Change-Id: I2bbf0a1ca2e71181711ae94fb366c2bc54b09cc9
2 files changed