From e9d510b26f517d41c0d0217c49d97e82a62d24ce Mon Sep 17 00:00:00 2001 From: Paul Thompson Date: Fri, 13 Apr 2018 05:27:03 -0700 Subject: [PATCH] Extend changes to other STM32 devices that have the PCD_WriteEmptyTxFifo() function --- targets/TARGET_STM/TARGET_STM32F1/device/stm32f1xx_hal_pcd.c | 4 ++-- targets/TARGET_STM/TARGET_STM32F2/device/stm32f2xx_hal_pcd.c | 4 ++-- targets/TARGET_STM/TARGET_STM32F4/device/stm32f4xx_hal_pcd.c | 4 ++-- targets/TARGET_STM/TARGET_STM32L4/device/stm32l4xx_hal_pcd.c | 4 ++-- 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/targets/TARGET_STM/TARGET_STM32F1/device/stm32f1xx_hal_pcd.c b/targets/TARGET_STM/TARGET_STM32F1/device/stm32f1xx_hal_pcd.c index 8e0ddbe30b..11c636a8b9 100644 --- a/targets/TARGET_STM/TARGET_STM32F1/device/stm32f1xx_hal_pcd.c +++ b/targets/TARGET_STM/TARGET_STM32F1/device/stm32f1xx_hal_pcd.c @@ -1152,7 +1152,7 @@ static HAL_StatusTypeDef PCD_WriteEmptyTxFifo(PCD_HandleTypeDef *hpcd, uint32_t { USB_OTG_GlobalTypeDef *USBx = hpcd->Instance; USB_OTG_EPTypeDef *ep = NULL; - int32_t len = 0; + uint32_t len; uint32_t len32b = 0U; uint32_t fifoemptymsk = 0U; @@ -1185,7 +1185,7 @@ static HAL_StatusTypeDef PCD_WriteEmptyTxFifo(PCD_HandleTypeDef *hpcd, uint32_t ep->xfer_count += len; } - if(len <= 0) + if (ep->xfer_count >= ep->xfer_len) { fifoemptymsk = 0x01U << epnum; USBx_DEVICE->DIEPEMPMSK &= ~fifoemptymsk; diff --git a/targets/TARGET_STM/TARGET_STM32F2/device/stm32f2xx_hal_pcd.c b/targets/TARGET_STM/TARGET_STM32F2/device/stm32f2xx_hal_pcd.c index 218c10a362..ee1703bbd1 100644 --- a/targets/TARGET_STM/TARGET_STM32F2/device/stm32f2xx_hal_pcd.c +++ b/targets/TARGET_STM/TARGET_STM32F2/device/stm32f2xx_hal_pcd.c @@ -1213,7 +1213,7 @@ static HAL_StatusTypeDef PCD_WriteEmptyTxFifo(PCD_HandleTypeDef *hpcd, uint32_t { USB_OTG_GlobalTypeDef *USBx = hpcd->Instance; USB_OTG_EPTypeDef *ep; - int32_t len = 0U; + uint32_t len; uint32_t len32b; uint32_t fifoemptymsk = 0U; @@ -1247,7 +1247,7 @@ static HAL_StatusTypeDef PCD_WriteEmptyTxFifo(PCD_HandleTypeDef *hpcd, uint32_t ep->xfer_count += len; } - if(len <= 0U) + if (ep->xfer_count >= ep->xfer_len) { fifoemptymsk = 0x1U << epnum; atomic_clr_u32(&USBx_DEVICE->DIEPEMPMSK, fifoemptymsk); diff --git a/targets/TARGET_STM/TARGET_STM32F4/device/stm32f4xx_hal_pcd.c b/targets/TARGET_STM/TARGET_STM32F4/device/stm32f4xx_hal_pcd.c index 44e191553c..a6ed3193fe 100644 --- a/targets/TARGET_STM/TARGET_STM32F4/device/stm32f4xx_hal_pcd.c +++ b/targets/TARGET_STM/TARGET_STM32F4/device/stm32f4xx_hal_pcd.c @@ -1311,7 +1311,7 @@ static HAL_StatusTypeDef PCD_WriteEmptyTxFifo(PCD_HandleTypeDef *hpcd, uint32_t { USB_OTG_GlobalTypeDef *USBx = hpcd->Instance; USB_OTG_EPTypeDef *ep; - int32_t len = 0U; + uint32_t len; uint32_t len32b; uint32_t fifoemptymsk = 0U; @@ -1345,7 +1345,7 @@ static HAL_StatusTypeDef PCD_WriteEmptyTxFifo(PCD_HandleTypeDef *hpcd, uint32_t ep->xfer_count += len; } - if(len <= 0U) + if (ep->xfer_count >= ep->xfer_len) { fifoemptymsk = 0x1U << epnum; /* MBED */ diff --git a/targets/TARGET_STM/TARGET_STM32L4/device/stm32l4xx_hal_pcd.c b/targets/TARGET_STM/TARGET_STM32L4/device/stm32l4xx_hal_pcd.c index 453922e740..5879b40698 100644 --- a/targets/TARGET_STM/TARGET_STM32L4/device/stm32l4xx_hal_pcd.c +++ b/targets/TARGET_STM/TARGET_STM32L4/device/stm32l4xx_hal_pcd.c @@ -1428,7 +1428,7 @@ static HAL_StatusTypeDef PCD_WriteEmptyTxFifo(PCD_HandleTypeDef *hpcd, uint32_t { USB_OTG_GlobalTypeDef *USBx = hpcd->Instance; USB_OTG_EPTypeDef *ep = NULL; - int32_t len = 0U; + uint32_t len; uint32_t len32b = 0; uint32_t fifoemptymsk = 0; @@ -1462,7 +1462,7 @@ static HAL_StatusTypeDef PCD_WriteEmptyTxFifo(PCD_HandleTypeDef *hpcd, uint32_t ep->xfer_count += len; } - if(len <= 0) + if (ep->xfer_count >= ep->xfer_len) { fifoemptymsk = 0x1 << epnum; // Added for MBED PR #3062