diff options
| author | sakumisu <[email protected]> | 2022-12-22 22:30:14 +0800 |
|---|---|---|
| committer | sakimisu <[email protected]> | 2022-12-22 22:30:49 +0800 |
| commit | 9f9c44d974d3e12ffce73c919fa6b43a64a45978 (patch) | |
| tree | f1c7457121f16023589c835d2499080eac2fd825 | |
| parent | d0a6ecbe899f21eaabf5e6e2348c7aca6d2bb47a (diff) | |
enable iso when use fifo mode
| -rw-r--r-- | port/dwc2/usb_dc_dwc2.c | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/port/dwc2/usb_dc_dwc2.c b/port/dwc2/usb_dc_dwc2.c index 0a852c75..1dd1e11e 100644 --- a/port/dwc2/usb_dc_dwc2.c +++ b/port/dwc2/usb_dc_dwc2.c @@ -869,9 +869,6 @@ int usbd_ep_start_write(const uint8_t ep, const uint8_t *data, uint32_t data_len USB_OTG_INEP(ep_idx)->DIEPTSIZ |= (USB_OTG_DIEPTSIZ_XFRSIZ & data_len); } -#ifdef CONFIG_USB_DWC2_DMA_ENABLE - USB_OTG_INEP(ep_idx)->DIEPDMA = (uint32_t)data; - if (g_dwc2_udc.in_ep[ep_idx].ep_type == 0x01) { if ((USB_OTG_DEV->DSTS & (1U << 8)) == 0U) { USB_OTG_INEP(ep_idx)->DIEPCTL |= USB_OTG_DIEPCTL_SODDFRM; @@ -881,6 +878,10 @@ int usbd_ep_start_write(const uint8_t ep, const uint8_t *data, uint32_t data_len USB_OTG_INEP(ep_idx)->DIEPTSIZ &= ~(USB_OTG_DIEPTSIZ_MULCNT); USB_OTG_INEP(ep_idx)->DIEPTSIZ |= (USB_OTG_DIEPTSIZ_MULCNT & (1U << 29)); } + +#ifdef CONFIG_USB_DWC2_DMA_ENABLE + USB_OTG_INEP(ep_idx)->DIEPDMA = (uint32_t)data; + USB_OTG_INEP(ep_idx)->DIEPCTL |= (USB_OTG_DIEPCTL_CNAK | USB_OTG_DIEPCTL_EPENA); #else USB_OTG_INEP(ep_idx)->DIEPCTL |= (USB_OTG_DIEPCTL_CNAK | USB_OTG_DIEPCTL_EPENA); @@ -938,7 +939,7 @@ int usbd_ep_start_read(const uint8_t ep, uint8_t *data, uint32_t data_len) #ifdef CONFIG_USB_DWC2_DMA_ENABLE USB_OTG_OUTEP(ep_idx)->DOEPDMA = (uint32_t)data; - +#endif if (g_dwc2_udc.out_ep[ep_idx].ep_type == 0x01) { if ((USB_OTG_DEV->DSTS & (1U << 8)) == 0U) { USB_OTG_OUTEP(ep_idx)->DOEPCTL |= USB_OTG_DIEPCTL_SODDFRM; @@ -946,8 +947,6 @@ int usbd_ep_start_read(const uint8_t ep, uint8_t *data, uint32_t data_len) USB_OTG_OUTEP(ep_idx)->DOEPCTL |= USB_OTG_DIEPCTL_SD0PID_SEVNFRM; } } -#endif - USB_OTG_OUTEP(ep_idx)->DOEPCTL |= (USB_OTG_DOEPCTL_CNAK | USB_OTG_DOEPCTL_EPENA); return 0; } |
