The dwc3 gadget driver is correctly checking the prepare and started request lists for potential underruns and will stop the running transfer in that case. However it is possible that the running pipeline will lead into more underrun scenarios, which can be avoided and be detected. This series is adding the corresponding code to ensure that an underrun transfer will be handled properly. Signed-off-by: Michael Grzeschik <m.grzeschik@xxxxxxxxxxxxxx> --- Michael Grzeschik (3): usb: dwc3: gadget: reclaim the whole started list when request was missed usb: dwc3: gadget: check drained isoc ep usb: dwc3: gadget: check the whole started queue for missed requests in complete drivers/usb/dwc3/gadget.c | 38 ++++++++++++++++++++++++++++++++++++-- 1 file changed, 36 insertions(+), 2 deletions(-) --- base-commit: dfea18989aa7beb42c2cb6344fe8787de35d9471 change-id: 20240307-dwc3-gadget-complete-irq-1a8ffa347fd1 Best regards, -- Michael Grzeschik <m.grzeschik@xxxxxxxxxxxxxx>