diff options
| author | Chen Leeren <[email protected]> | 2023-10-07 17:36:28 +0800 |
|---|---|---|
| committer | sakumisu <[email protected]> | 2023-10-07 23:46:28 +0800 |
| commit | 3d96f64f940ed6123a73433e7ce333de0f10d5bb (patch) | |
| tree | 76bba58e9e1c2d15213e8f3fa05ca649c75ce1fa | |
| parent | a746eb4bb185ef5161f62b4f65a780855f0dee88 (diff) | |
Fix possible errors in endpoint 0 datapid
| -rw-r--r-- | port/ch32/usb_dc_usbfs.c | 2 | ||||
| -rw-r--r-- | port/ch32/usb_dc_usbhs.c | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/port/ch32/usb_dc_usbfs.c b/port/ch32/usb_dc_usbfs.c index b2241b02..69492b33 100644 --- a/port/ch32/usb_dc_usbfs.c +++ b/port/ch32/usb_dc_usbfs.c @@ -270,7 +270,7 @@ void USBD_IRQHandler(void) case USBFS_UIS_TOKEN_IN: if (ep_idx == 0x00) { - if (g_ch32_usbfs_udc.in_ep[ep_idx].xfer_len > g_ch32_usbfs_udc.in_ep[ep_idx].ep_mps) { + if (g_ch32_usbfs_udc.in_ep[ep_idx].xfer_len >= g_ch32_usbfs_udc.in_ep[ep_idx].ep_mps) { g_ch32_usbfs_udc.in_ep[ep_idx].xfer_len -= g_ch32_usbfs_udc.in_ep[ep_idx].ep_mps; g_ch32_usbfs_udc.in_ep[ep_idx].actual_xfer_len += g_ch32_usbfs_udc.in_ep[ep_idx].ep_mps; ep0_tx_data_toggle ^= 1; diff --git a/port/ch32/usb_dc_usbhs.c b/port/ch32/usb_dc_usbhs.c index 359e00e6..8cc9e0a6 100644 --- a/port/ch32/usb_dc_usbhs.c +++ b/port/ch32/usb_dc_usbhs.c @@ -258,7 +258,7 @@ void USBD_IRQHandler(void) if (token == PID_IN) { if (ep_idx == 0x00) { - if (g_ch32_usbhs_udc.in_ep[ep_idx].xfer_len > g_ch32_usbhs_udc.in_ep[ep_idx].ep_mps) { + if (g_ch32_usbhs_udc.in_ep[ep_idx].xfer_len >= g_ch32_usbhs_udc.in_ep[ep_idx].ep_mps) { g_ch32_usbhs_udc.in_ep[ep_idx].xfer_len -= g_ch32_usbhs_udc.in_ep[ep_idx].ep_mps; g_ch32_usbhs_udc.in_ep[ep_idx].actual_xfer_len += g_ch32_usbhs_udc.in_ep[ep_idx].ep_mps; ep0_tx_data_toggle ^= 1; |
