Skip to content

Commit 527fbb4

Browse files
tmon-nordicjukkar
authored andcommitted
[nrf fromtree] drivers: udc_dwc2: Queue next packet on incomplete iso IN interrupt
When handling incomplete iso IN interrupt mark current transfer as complete and program the endpoint with any subsequently queued packet. Program the endpoint directly in interrupt handler because the data must be programmed before SOF (by the time incomplete iso IN interrupt is raised there is less than 20% * 125 us = 25 us before SOF). Signed-off-by: Tomasz Moń <[email protected]> (cherry picked from commit edbb053) (cherry picked from commit a5a1256)
1 parent 4e1073c commit 527fbb4

File tree

1 file changed

+4
-0
lines changed

1 file changed

+4
-0
lines changed

drivers/usb/udc/udc_dwc2.c

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2572,7 +2572,11 @@ static void dwc2_handle_incompisoin(const struct device *dev)
25722572

25732573
buf = udc_buf_get(dev, cfg->addr);
25742574
if (buf) {
2575+
/* Data is no longer relevant */
25752576
udc_submit_ep_event(dev, buf, 0);
2577+
2578+
/* Try to queue next packet before SOF */
2579+
dwc2_handle_xfer_next(dev, cfg);
25762580
}
25772581
}
25782582
}

0 commit comments

Comments
 (0)