From b41f6105142e128bfa7641fbe001aeceb2dc5dd9 Mon Sep 17 00:00:00 2001 From: "William D. Jones" Date: Wed, 23 Jan 2019 02:24:29 -0500 Subject: [PATCH] stm32f4: Remember to turn off TXFE when IN xfer is done; it not automatically cleared like EPENA. --- src/portable/stm/stm32f4/dcd_stm32f4.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/portable/stm/stm32f4/dcd_stm32f4.c b/src/portable/stm/stm32f4/dcd_stm32f4.c index 2abf0465..a98a0ed5 100644 --- a/src/portable/stm/stm32f4/dcd_stm32f4.c +++ b/src/portable/stm/stm32f4/dcd_stm32f4.c @@ -484,6 +484,7 @@ void OTG_FS_IRQHandler(void) { // IN XFER complete. if(in_ep[n].DIEPINT & USB_OTG_DIEPINT_XFRC) { in_ep[n].DIEPINT = USB_OTG_DIEPINT_XFRC; + dev->DIEPEMPMSK &= ~(1 << n); // Turn off TXFE b/c xfer inactive. dcd_event_xfer_complete(0, n | TUSB_DIR_IN_MASK, xfer->total_len, XFER_RESULT_SUCCESS, true); }