usb: dwc3: gadget: Fix ISO transfer performance
authorRoger Quadros <rogerq@ti.com>
Fri, 21 Apr 2017 12:58:08 +0000 (15:58 +0300)
committerFelipe Balbi <felipe.balbi@linux.intel.com>
Tue, 16 May 2017 11:11:03 +0000 (14:11 +0300)
commitf1d6826cae30e97e37a1f2481d7e1dc4faa09ce1
treeb5fa77ad29f2e2177b2f9ec6ccab23889a2b7aef
parent682179592e48fa66056fbad1a86604be4992f885
usb: dwc3: gadget: Fix ISO transfer performance

Commit 08a36b543803 ("usb: dwc3: gadget: simplify __dwc3_gadget_ep_queue()")
caused a small change in the way ISO transfer is handled in the case
when XferInProgress event happens on Isoc EP with an active transfer.
This caused a performance degradation of 50%. e.g. using g_webcam on DUT
and luvcview on host the video frame rate dropped from 16fps to 8fps
@high-speed.

Make the ISO transfer handling equivalent to that prior to that commit
to get back the original ISO performance numbers.

Fixes: 08a36b543803 ("usb: dwc3: gadget: simplify __dwc3_gadget_ep_queue()")
Signed-off-by: Roger Quadros <rogerq@ti.com>
Signed-off-by: Felipe Balbi <felipe.balbi@linux.intel.com>
drivers/usb/dwc3/gadget.c