From: Pratyush Anand Date: Mon, 14 Jan 2013 10:29:34 +0000 (+0530) Subject: usb: dwc3: gadget: fix isoc END TRANSFER Condition X-Git-Tag: v3.9-rc1~126^2~44^2~16 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=cdc359dd87ab6c39a67dab724fd0b61c16e6f08b;p=pandora-kernel.git usb: dwc3: gadget: fix isoc END TRANSFER Condition There were still some corner cases where isoc transfer was not able to restart, specially when missed isoc does not happen , and in fact gadget does not queue any new request during giveback. Cleanup function calls giveback first, which provides a way to queue another request to gadget. But gadget did not had any data. So , it did not call ep_queue. To twist it further, gadget did not queue till cleanup for last queued TRB is called. If we ever reach this scenario, we must call END TRANSFER, so that we receive a new xfernotready with information about current microframe number. Also insure that there is no request submitted to core when issuing END TRANSFER. Cc: # v3.8 Signed-off-by: Pratyush Anand Signed-off-by: Felipe Balbi --- Reading git-diff-tree failed