summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/portable/nuvoton/nuc505/dcd_nuc505.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/portable/nuvoton/nuc505/dcd_nuc505.c b/src/portable/nuvoton/nuc505/dcd_nuc505.c
index 2b6a66bc2..031bfc5e4 100644
--- a/src/portable/nuvoton/nuc505/dcd_nuc505.c
+++ b/src/portable/nuvoton/nuc505/dcd_nuc505.c
@@ -211,6 +211,7 @@ static void bus_reset(void)
current_dma_xfer = NULL;
}
+#if 0
/* this must only be called by the ISR; it does its best to share the single DMA engine across all user EPs (IN and OUT) */
static void service_dma(void)
{
@@ -243,6 +244,7 @@ static void service_dma(void)
return;
}
}
+#endif
/* centralized location for USBD interrupt enable bit masks */
static const uint32_t enabled_irqs = USBD_GINTEN_USBIEN_Msk | \
@@ -366,7 +368,7 @@ bool dcd_edpt_xfer(uint8_t rhport, uint8_t ep_addr, uint8_t *buffer, uint16_t to
for (int count = 0; count < total_bytes; count++)
*buffer++ = USBD->CEPDAT_BYTE;
- usb_control_send_zlp();
+ dcd_event_xfer_complete(0, ep_addr, total_bytes, XFER_RESULT_SUCCESS, true);
}
}
else
@@ -465,6 +467,7 @@ void USBD_IRQHandler(void)
if (bus_state & USBD_BUSINTSTS_DMADONEIF_Msk)
{
+#if 0
if (current_dma_xfer)
{
current_dma_xfer->dma_requested = false;
@@ -480,6 +483,7 @@ void USBD_IRQHandler(void)
current_dma_xfer = NULL;
service_dma();
}
+#endif
}
if (bus_state & USBD_BUSINTSTS_VBUSDETIF_Msk)
@@ -597,7 +601,7 @@ void USBD_IRQHandler(void)
if (out_ep)
{
-#if 1
+#if 0
xfer->dma_requested = true;
service_dma();
#else