Lines Matching refs:hpcd
91 static HAL_StatusTypeDef PCD_WriteEmptyTxFifo(PCD_HandleTypeDef *hpcd, uint32_t epnum);
92 static HAL_StatusTypeDef PCD_EP_OutXfrComplete_int(PCD_HandleTypeDef *hpcd, uint32_t epnum);
93 static HAL_StatusTypeDef PCD_EP_OutSetupPacket_int(PCD_HandleTypeDef *hpcd, uint32_t epnum);
123 HAL_StatusTypeDef HAL_PCD_Init(PCD_HandleTypeDef *hpcd) in HAL_PCD_Init() argument
131 if (hpcd == NULL) in HAL_PCD_Init()
137 assert_param(IS_PCD_ALL_INSTANCE(hpcd->Instance)); in HAL_PCD_Init()
140 USBx = hpcd->Instance; in HAL_PCD_Init()
143 if (hpcd->State == HAL_PCD_STATE_RESET) in HAL_PCD_Init()
146 hpcd->Lock = HAL_UNLOCKED; in HAL_PCD_Init()
149 hpcd->SOFCallback = HAL_PCD_SOFCallback; in HAL_PCD_Init()
150 hpcd->SetupStageCallback = HAL_PCD_SetupStageCallback; in HAL_PCD_Init()
151 hpcd->ResetCallback = HAL_PCD_ResetCallback; in HAL_PCD_Init()
152 hpcd->SuspendCallback = HAL_PCD_SuspendCallback; in HAL_PCD_Init()
153 hpcd->ResumeCallback = HAL_PCD_ResumeCallback; in HAL_PCD_Init()
154 hpcd->ConnectCallback = HAL_PCD_ConnectCallback; in HAL_PCD_Init()
155 hpcd->DisconnectCallback = HAL_PCD_DisconnectCallback; in HAL_PCD_Init()
156 hpcd->DataOutStageCallback = HAL_PCD_DataOutStageCallback; in HAL_PCD_Init()
157 hpcd->DataInStageCallback = HAL_PCD_DataInStageCallback; in HAL_PCD_Init()
158 hpcd->ISOOUTIncompleteCallback = HAL_PCD_ISOOUTIncompleteCallback; in HAL_PCD_Init()
159 hpcd->ISOINIncompleteCallback = HAL_PCD_ISOINIncompleteCallback; in HAL_PCD_Init()
160 hpcd->LPMCallback = HAL_PCDEx_LPM_Callback; in HAL_PCD_Init()
161 hpcd->BCDCallback = HAL_PCDEx_BCD_Callback; in HAL_PCD_Init()
163 if (hpcd->MspInitCallback == NULL) in HAL_PCD_Init()
165 hpcd->MspInitCallback = HAL_PCD_MspInit; in HAL_PCD_Init()
169 hpcd->MspInitCallback(hpcd); in HAL_PCD_Init()
172 HAL_PCD_MspInit(hpcd); in HAL_PCD_Init()
176 hpcd->State = HAL_PCD_STATE_BUSY; in HAL_PCD_Init()
182 hpcd->Init.dma_enable = 0U; in HAL_PCD_Init()
187 __HAL_PCD_DISABLE(hpcd); in HAL_PCD_Init()
190 if (USB_CoreInit(hpcd->Instance, hpcd->Init) != HAL_OK) in HAL_PCD_Init()
192 hpcd->State = HAL_PCD_STATE_ERROR; in HAL_PCD_Init()
197 if (USB_SetCurrentMode(hpcd->Instance, USB_DEVICE_MODE) != HAL_OK) in HAL_PCD_Init()
199 hpcd->State = HAL_PCD_STATE_ERROR; in HAL_PCD_Init()
204 for (i = 0U; i < hpcd->Init.dev_endpoints; i++) in HAL_PCD_Init()
207 hpcd->IN_ep[i].is_in = 1U; in HAL_PCD_Init()
208 hpcd->IN_ep[i].num = i; in HAL_PCD_Init()
209 hpcd->IN_ep[i].tx_fifo_num = i; in HAL_PCD_Init()
211 hpcd->IN_ep[i].type = EP_TYPE_CTRL; in HAL_PCD_Init()
212 hpcd->IN_ep[i].maxpacket = 0U; in HAL_PCD_Init()
213 hpcd->IN_ep[i].xfer_buff = 0U; in HAL_PCD_Init()
214 hpcd->IN_ep[i].xfer_len = 0U; in HAL_PCD_Init()
217 for (i = 0U; i < hpcd->Init.dev_endpoints; i++) in HAL_PCD_Init()
219 hpcd->OUT_ep[i].is_in = 0U; in HAL_PCD_Init()
220 hpcd->OUT_ep[i].num = i; in HAL_PCD_Init()
222 hpcd->OUT_ep[i].type = EP_TYPE_CTRL; in HAL_PCD_Init()
223 hpcd->OUT_ep[i].maxpacket = 0U; in HAL_PCD_Init()
224 hpcd->OUT_ep[i].xfer_buff = 0U; in HAL_PCD_Init()
225 hpcd->OUT_ep[i].xfer_len = 0U; in HAL_PCD_Init()
229 if (USB_DevInit(hpcd->Instance, hpcd->Init) != HAL_OK) in HAL_PCD_Init()
231 hpcd->State = HAL_PCD_STATE_ERROR; in HAL_PCD_Init()
235 hpcd->USB_Address = 0U; in HAL_PCD_Init()
236 hpcd->State = HAL_PCD_STATE_READY; in HAL_PCD_Init()
239 if (hpcd->Init.lpm_enable == 1U) in HAL_PCD_Init()
241 (void)HAL_PCDEx_ActivateLPM(hpcd); in HAL_PCD_Init()
244 (void)USB_DevDisconnect(hpcd->Instance); in HAL_PCD_Init()
254 HAL_StatusTypeDef HAL_PCD_DeInit(PCD_HandleTypeDef *hpcd) in HAL_PCD_DeInit() argument
257 if (hpcd == NULL) in HAL_PCD_DeInit()
262 hpcd->State = HAL_PCD_STATE_BUSY; in HAL_PCD_DeInit()
265 if (USB_StopDevice(hpcd->Instance) != HAL_OK) in HAL_PCD_DeInit()
271 if (hpcd->MspDeInitCallback == NULL) in HAL_PCD_DeInit()
273 hpcd->MspDeInitCallback = HAL_PCD_MspDeInit; /* Legacy weak MspDeInit */ in HAL_PCD_DeInit()
277 hpcd->MspDeInitCallback(hpcd); in HAL_PCD_DeInit()
280 HAL_PCD_MspDeInit(hpcd); in HAL_PCD_DeInit()
283 hpcd->State = HAL_PCD_STATE_RESET; in HAL_PCD_DeInit()
293 __weak void HAL_PCD_MspInit(PCD_HandleTypeDef *hpcd) in HAL_PCD_MspInit() argument
296 UNUSED(hpcd); in HAL_PCD_MspInit()
308 __weak void HAL_PCD_MspDeInit(PCD_HandleTypeDef *hpcd) in HAL_PCD_MspDeInit() argument
311 UNUSED(hpcd); in HAL_PCD_MspDeInit()
337 HAL_StatusTypeDef HAL_PCD_RegisterCallback(PCD_HandleTypeDef *hpcd, in HAL_PCD_RegisterCallback() argument
346 hpcd->ErrorCode |= HAL_PCD_ERROR_INVALID_CALLBACK; in HAL_PCD_RegisterCallback()
350 __HAL_LOCK(hpcd); in HAL_PCD_RegisterCallback()
352 if (hpcd->State == HAL_PCD_STATE_READY) in HAL_PCD_RegisterCallback()
357 hpcd->SOFCallback = pCallback; in HAL_PCD_RegisterCallback()
361 hpcd->SetupStageCallback = pCallback; in HAL_PCD_RegisterCallback()
365 hpcd->ResetCallback = pCallback; in HAL_PCD_RegisterCallback()
369 hpcd->SuspendCallback = pCallback; in HAL_PCD_RegisterCallback()
373 hpcd->ResumeCallback = pCallback; in HAL_PCD_RegisterCallback()
377 hpcd->ConnectCallback = pCallback; in HAL_PCD_RegisterCallback()
381 hpcd->DisconnectCallback = pCallback; in HAL_PCD_RegisterCallback()
385 hpcd->MspInitCallback = pCallback; in HAL_PCD_RegisterCallback()
389 hpcd->MspDeInitCallback = pCallback; in HAL_PCD_RegisterCallback()
394 hpcd->ErrorCode |= HAL_PCD_ERROR_INVALID_CALLBACK; in HAL_PCD_RegisterCallback()
400 else if (hpcd->State == HAL_PCD_STATE_RESET) in HAL_PCD_RegisterCallback()
405 hpcd->MspInitCallback = pCallback; in HAL_PCD_RegisterCallback()
409 hpcd->MspDeInitCallback = pCallback; in HAL_PCD_RegisterCallback()
414 hpcd->ErrorCode |= HAL_PCD_ERROR_INVALID_CALLBACK; in HAL_PCD_RegisterCallback()
423 hpcd->ErrorCode |= HAL_PCD_ERROR_INVALID_CALLBACK; in HAL_PCD_RegisterCallback()
429 __HAL_UNLOCK(hpcd); in HAL_PCD_RegisterCallback()
450 HAL_StatusTypeDef HAL_PCD_UnRegisterCallback(PCD_HandleTypeDef *hpcd, HAL_PCD_CallbackIDTypeDef Cal… in HAL_PCD_UnRegisterCallback() argument
455 __HAL_LOCK(hpcd); in HAL_PCD_UnRegisterCallback()
458 if (hpcd->State == HAL_PCD_STATE_READY) in HAL_PCD_UnRegisterCallback()
463 hpcd->SOFCallback = HAL_PCD_SOFCallback; in HAL_PCD_UnRegisterCallback()
467 hpcd->SetupStageCallback = HAL_PCD_SetupStageCallback; in HAL_PCD_UnRegisterCallback()
471 hpcd->ResetCallback = HAL_PCD_ResetCallback; in HAL_PCD_UnRegisterCallback()
475 hpcd->SuspendCallback = HAL_PCD_SuspendCallback; in HAL_PCD_UnRegisterCallback()
479 hpcd->ResumeCallback = HAL_PCD_ResumeCallback; in HAL_PCD_UnRegisterCallback()
483 hpcd->ConnectCallback = HAL_PCD_ConnectCallback; in HAL_PCD_UnRegisterCallback()
487 hpcd->DisconnectCallback = HAL_PCD_DisconnectCallback; in HAL_PCD_UnRegisterCallback()
491 hpcd->MspInitCallback = HAL_PCD_MspInit; in HAL_PCD_UnRegisterCallback()
495 hpcd->MspDeInitCallback = HAL_PCD_MspDeInit; in HAL_PCD_UnRegisterCallback()
500 hpcd->ErrorCode |= HAL_PCD_ERROR_INVALID_CALLBACK; in HAL_PCD_UnRegisterCallback()
507 else if (hpcd->State == HAL_PCD_STATE_RESET) in HAL_PCD_UnRegisterCallback()
512 hpcd->MspInitCallback = HAL_PCD_MspInit; in HAL_PCD_UnRegisterCallback()
516 hpcd->MspDeInitCallback = HAL_PCD_MspDeInit; in HAL_PCD_UnRegisterCallback()
521 hpcd->ErrorCode |= HAL_PCD_ERROR_INVALID_CALLBACK; in HAL_PCD_UnRegisterCallback()
531 hpcd->ErrorCode |= HAL_PCD_ERROR_INVALID_CALLBACK; in HAL_PCD_UnRegisterCallback()
538 __HAL_UNLOCK(hpcd); in HAL_PCD_UnRegisterCallback()
549 HAL_StatusTypeDef HAL_PCD_RegisterDataOutStageCallback(PCD_HandleTypeDef *hpcd, in HAL_PCD_RegisterDataOutStageCallback() argument
557 hpcd->ErrorCode |= HAL_PCD_ERROR_INVALID_CALLBACK; in HAL_PCD_RegisterDataOutStageCallback()
563 __HAL_LOCK(hpcd); in HAL_PCD_RegisterDataOutStageCallback()
565 if (hpcd->State == HAL_PCD_STATE_READY) in HAL_PCD_RegisterDataOutStageCallback()
567 hpcd->DataOutStageCallback = pCallback; in HAL_PCD_RegisterDataOutStageCallback()
572 hpcd->ErrorCode |= HAL_PCD_ERROR_INVALID_CALLBACK; in HAL_PCD_RegisterDataOutStageCallback()
579 __HAL_UNLOCK(hpcd); in HAL_PCD_RegisterDataOutStageCallback()
590 HAL_StatusTypeDef HAL_PCD_UnRegisterDataOutStageCallback(PCD_HandleTypeDef *hpcd) in HAL_PCD_UnRegisterDataOutStageCallback() argument
595 __HAL_LOCK(hpcd); in HAL_PCD_UnRegisterDataOutStageCallback()
597 if (hpcd->State == HAL_PCD_STATE_READY) in HAL_PCD_UnRegisterDataOutStageCallback()
599 … hpcd->DataOutStageCallback = HAL_PCD_DataOutStageCallback; /* Legacy weak DataOutStageCallback */ in HAL_PCD_UnRegisterDataOutStageCallback()
604 hpcd->ErrorCode |= HAL_PCD_ERROR_INVALID_CALLBACK; in HAL_PCD_UnRegisterDataOutStageCallback()
611 __HAL_UNLOCK(hpcd); in HAL_PCD_UnRegisterDataOutStageCallback()
623 HAL_StatusTypeDef HAL_PCD_RegisterDataInStageCallback(PCD_HandleTypeDef *hpcd, in HAL_PCD_RegisterDataInStageCallback() argument
631 hpcd->ErrorCode |= HAL_PCD_ERROR_INVALID_CALLBACK; in HAL_PCD_RegisterDataInStageCallback()
637 __HAL_LOCK(hpcd); in HAL_PCD_RegisterDataInStageCallback()
639 if (hpcd->State == HAL_PCD_STATE_READY) in HAL_PCD_RegisterDataInStageCallback()
641 hpcd->DataInStageCallback = pCallback; in HAL_PCD_RegisterDataInStageCallback()
646 hpcd->ErrorCode |= HAL_PCD_ERROR_INVALID_CALLBACK; in HAL_PCD_RegisterDataInStageCallback()
653 __HAL_UNLOCK(hpcd); in HAL_PCD_RegisterDataInStageCallback()
664 HAL_StatusTypeDef HAL_PCD_UnRegisterDataInStageCallback(PCD_HandleTypeDef *hpcd) in HAL_PCD_UnRegisterDataInStageCallback() argument
669 __HAL_LOCK(hpcd); in HAL_PCD_UnRegisterDataInStageCallback()
671 if (hpcd->State == HAL_PCD_STATE_READY) in HAL_PCD_UnRegisterDataInStageCallback()
673 hpcd->DataInStageCallback = HAL_PCD_DataInStageCallback; /* Legacy weak DataInStageCallback */ in HAL_PCD_UnRegisterDataInStageCallback()
678 hpcd->ErrorCode |= HAL_PCD_ERROR_INVALID_CALLBACK; in HAL_PCD_UnRegisterDataInStageCallback()
685 __HAL_UNLOCK(hpcd); in HAL_PCD_UnRegisterDataInStageCallback()
697 HAL_StatusTypeDef HAL_PCD_RegisterIsoOutIncpltCallback(PCD_HandleTypeDef *hpcd, in HAL_PCD_RegisterIsoOutIncpltCallback() argument
705 hpcd->ErrorCode |= HAL_PCD_ERROR_INVALID_CALLBACK; in HAL_PCD_RegisterIsoOutIncpltCallback()
711 __HAL_LOCK(hpcd); in HAL_PCD_RegisterIsoOutIncpltCallback()
713 if (hpcd->State == HAL_PCD_STATE_READY) in HAL_PCD_RegisterIsoOutIncpltCallback()
715 hpcd->ISOOUTIncompleteCallback = pCallback; in HAL_PCD_RegisterIsoOutIncpltCallback()
720 hpcd->ErrorCode |= HAL_PCD_ERROR_INVALID_CALLBACK; in HAL_PCD_RegisterIsoOutIncpltCallback()
727 __HAL_UNLOCK(hpcd); in HAL_PCD_RegisterIsoOutIncpltCallback()
739 HAL_StatusTypeDef HAL_PCD_UnRegisterIsoOutIncpltCallback(PCD_HandleTypeDef *hpcd) in HAL_PCD_UnRegisterIsoOutIncpltCallback() argument
744 __HAL_LOCK(hpcd); in HAL_PCD_UnRegisterIsoOutIncpltCallback()
746 if (hpcd->State == HAL_PCD_STATE_READY) in HAL_PCD_UnRegisterIsoOutIncpltCallback()
748 …hpcd->ISOOUTIncompleteCallback = HAL_PCD_ISOOUTIncompleteCallback; /* Legacy weak ISOOUTIncomplete… in HAL_PCD_UnRegisterIsoOutIncpltCallback()
753 hpcd->ErrorCode |= HAL_PCD_ERROR_INVALID_CALLBACK; in HAL_PCD_UnRegisterIsoOutIncpltCallback()
760 __HAL_UNLOCK(hpcd); in HAL_PCD_UnRegisterIsoOutIncpltCallback()
772 HAL_StatusTypeDef HAL_PCD_RegisterIsoInIncpltCallback(PCD_HandleTypeDef *hpcd, in HAL_PCD_RegisterIsoInIncpltCallback() argument
780 hpcd->ErrorCode |= HAL_PCD_ERROR_INVALID_CALLBACK; in HAL_PCD_RegisterIsoInIncpltCallback()
786 __HAL_LOCK(hpcd); in HAL_PCD_RegisterIsoInIncpltCallback()
788 if (hpcd->State == HAL_PCD_STATE_READY) in HAL_PCD_RegisterIsoInIncpltCallback()
790 hpcd->ISOINIncompleteCallback = pCallback; in HAL_PCD_RegisterIsoInIncpltCallback()
795 hpcd->ErrorCode |= HAL_PCD_ERROR_INVALID_CALLBACK; in HAL_PCD_RegisterIsoInIncpltCallback()
802 __HAL_UNLOCK(hpcd); in HAL_PCD_RegisterIsoInIncpltCallback()
814 HAL_StatusTypeDef HAL_PCD_UnRegisterIsoInIncpltCallback(PCD_HandleTypeDef *hpcd) in HAL_PCD_UnRegisterIsoInIncpltCallback() argument
819 __HAL_LOCK(hpcd); in HAL_PCD_UnRegisterIsoInIncpltCallback()
821 if (hpcd->State == HAL_PCD_STATE_READY) in HAL_PCD_UnRegisterIsoInIncpltCallback()
823 …hpcd->ISOINIncompleteCallback = HAL_PCD_ISOINIncompleteCallback; /* Legacy weak ISOINIncompleteCal… in HAL_PCD_UnRegisterIsoInIncpltCallback()
828 hpcd->ErrorCode |= HAL_PCD_ERROR_INVALID_CALLBACK; in HAL_PCD_UnRegisterIsoInIncpltCallback()
835 __HAL_UNLOCK(hpcd); in HAL_PCD_UnRegisterIsoInIncpltCallback()
847 HAL_StatusTypeDef HAL_PCD_RegisterBcdCallback(PCD_HandleTypeDef *hpcd, pPCD_BcdCallbackTypeDef pCal… in HAL_PCD_RegisterBcdCallback() argument
854 hpcd->ErrorCode |= HAL_PCD_ERROR_INVALID_CALLBACK; in HAL_PCD_RegisterBcdCallback()
860 __HAL_LOCK(hpcd); in HAL_PCD_RegisterBcdCallback()
862 if (hpcd->State == HAL_PCD_STATE_READY) in HAL_PCD_RegisterBcdCallback()
864 hpcd->BCDCallback = pCallback; in HAL_PCD_RegisterBcdCallback()
869 hpcd->ErrorCode |= HAL_PCD_ERROR_INVALID_CALLBACK; in HAL_PCD_RegisterBcdCallback()
876 __HAL_UNLOCK(hpcd); in HAL_PCD_RegisterBcdCallback()
887 HAL_StatusTypeDef HAL_PCD_UnRegisterBcdCallback(PCD_HandleTypeDef *hpcd) in HAL_PCD_UnRegisterBcdCallback() argument
892 __HAL_LOCK(hpcd); in HAL_PCD_UnRegisterBcdCallback()
894 if (hpcd->State == HAL_PCD_STATE_READY) in HAL_PCD_UnRegisterBcdCallback()
896 hpcd->BCDCallback = HAL_PCDEx_BCD_Callback; /* Legacy weak HAL_PCDEx_BCD_Callback */ in HAL_PCD_UnRegisterBcdCallback()
901 hpcd->ErrorCode |= HAL_PCD_ERROR_INVALID_CALLBACK; in HAL_PCD_UnRegisterBcdCallback()
908 __HAL_UNLOCK(hpcd); in HAL_PCD_UnRegisterBcdCallback()
920 HAL_StatusTypeDef HAL_PCD_RegisterLpmCallback(PCD_HandleTypeDef *hpcd, pPCD_LpmCallbackTypeDef pCal… in HAL_PCD_RegisterLpmCallback() argument
927 hpcd->ErrorCode |= HAL_PCD_ERROR_INVALID_CALLBACK; in HAL_PCD_RegisterLpmCallback()
933 __HAL_LOCK(hpcd); in HAL_PCD_RegisterLpmCallback()
935 if (hpcd->State == HAL_PCD_STATE_READY) in HAL_PCD_RegisterLpmCallback()
937 hpcd->LPMCallback = pCallback; in HAL_PCD_RegisterLpmCallback()
942 hpcd->ErrorCode |= HAL_PCD_ERROR_INVALID_CALLBACK; in HAL_PCD_RegisterLpmCallback()
949 __HAL_UNLOCK(hpcd); in HAL_PCD_RegisterLpmCallback()
960 HAL_StatusTypeDef HAL_PCD_UnRegisterLpmCallback(PCD_HandleTypeDef *hpcd) in HAL_PCD_UnRegisterLpmCallback() argument
965 __HAL_LOCK(hpcd); in HAL_PCD_UnRegisterLpmCallback()
967 if (hpcd->State == HAL_PCD_STATE_READY) in HAL_PCD_UnRegisterLpmCallback()
969 hpcd->LPMCallback = HAL_PCDEx_LPM_Callback; /* Legacy weak HAL_PCDEx_LPM_Callback */ in HAL_PCD_UnRegisterLpmCallback()
974 hpcd->ErrorCode |= HAL_PCD_ERROR_INVALID_CALLBACK; in HAL_PCD_UnRegisterLpmCallback()
981 __HAL_UNLOCK(hpcd); in HAL_PCD_UnRegisterLpmCallback()
1011 HAL_StatusTypeDef HAL_PCD_Start(PCD_HandleTypeDef *hpcd) in HAL_PCD_Start() argument
1013 USB_OTG_GlobalTypeDef *USBx = hpcd->Instance; in HAL_PCD_Start()
1015 __HAL_LOCK(hpcd); in HAL_PCD_Start()
1018 (hpcd->Init.battery_charging_enable == 1U)) in HAL_PCD_Start()
1024 __HAL_PCD_ENABLE(hpcd); in HAL_PCD_Start()
1025 (void)USB_DevConnect(hpcd->Instance); in HAL_PCD_Start()
1026 __HAL_UNLOCK(hpcd); in HAL_PCD_Start()
1036 HAL_StatusTypeDef HAL_PCD_Stop(PCD_HandleTypeDef *hpcd) in HAL_PCD_Stop() argument
1038 USB_OTG_GlobalTypeDef *USBx = hpcd->Instance; in HAL_PCD_Stop()
1040 __HAL_LOCK(hpcd); in HAL_PCD_Stop()
1041 __HAL_PCD_DISABLE(hpcd); in HAL_PCD_Stop()
1042 (void)USB_DevDisconnect(hpcd->Instance); in HAL_PCD_Stop()
1044 (void)USB_FlushTxFifo(hpcd->Instance, 0x10U); in HAL_PCD_Stop()
1047 (hpcd->Init.battery_charging_enable == 1U)) in HAL_PCD_Stop()
1053 __HAL_UNLOCK(hpcd); in HAL_PCD_Stop()
1064 void HAL_PCD_IRQHandler(PCD_HandleTypeDef *hpcd) in HAL_PCD_IRQHandler() argument
1066 USB_OTG_GlobalTypeDef *USBx = hpcd->Instance; in HAL_PCD_IRQHandler()
1077 if (USB_GetMode(hpcd->Instance) == USB_OTG_MODE_DEVICE) in HAL_PCD_IRQHandler()
1080 if (__HAL_PCD_IS_INVALID_INTERRUPT(hpcd)) in HAL_PCD_IRQHandler()
1086 hpcd->FrameNumber = (USBx_DEVICE->DSTS & USB_OTG_DSTS_FNSOF_Msk) >> USB_OTG_DSTS_FNSOF_Pos; in HAL_PCD_IRQHandler()
1088 if (__HAL_PCD_GET_FLAG(hpcd, USB_OTG_GINTSTS_MMIS)) in HAL_PCD_IRQHandler()
1091 __HAL_PCD_CLEAR_FLAG(hpcd, USB_OTG_GINTSTS_MMIS); in HAL_PCD_IRQHandler()
1095 if (__HAL_PCD_GET_FLAG(hpcd, USB_OTG_GINTSTS_RXFLVL)) in HAL_PCD_IRQHandler()
1097 USB_MASK_INTERRUPT(hpcd->Instance, USB_OTG_GINTSTS_RXFLVL); in HAL_PCD_IRQHandler()
1101 ep = &hpcd->OUT_ep[RegVal & USB_OTG_GRXSTSP_EPNUM]; in HAL_PCD_IRQHandler()
1116 (void)USB_ReadPacket(USBx, (uint8_t *)hpcd->Setup, 8U); in HAL_PCD_IRQHandler()
1124 USB_UNMASK_INTERRUPT(hpcd->Instance, USB_OTG_GINTSTS_RXFLVL); in HAL_PCD_IRQHandler()
1127 if (__HAL_PCD_GET_FLAG(hpcd, USB_OTG_GINTSTS_OEPINT)) in HAL_PCD_IRQHandler()
1132 ep_intr = USB_ReadDevAllOutEpInterrupt(hpcd->Instance); in HAL_PCD_IRQHandler()
1138 epint = USB_ReadDevOutEPInterrupt(hpcd->Instance, (uint8_t)epnum); in HAL_PCD_IRQHandler()
1143 (void)PCD_EP_OutXfrComplete_int(hpcd, epnum); in HAL_PCD_IRQHandler()
1150 (void)PCD_EP_OutSetupPacket_int(hpcd, epnum); in HAL_PCD_IRQHandler()
1166 ep = &hpcd->OUT_ep[epnum]; in HAL_PCD_IRQHandler()
1173 hpcd->ISOOUTIncompleteCallback(hpcd, (uint8_t)epnum); in HAL_PCD_IRQHandler()
1175 HAL_PCD_ISOOUTIncompleteCallback(hpcd, (uint8_t)epnum); in HAL_PCD_IRQHandler()
1199 if (__HAL_PCD_GET_FLAG(hpcd, USB_OTG_GINTSTS_IEPINT)) in HAL_PCD_IRQHandler()
1202 ep_intr = USB_ReadDevAllInEpInterrupt(hpcd->Instance); in HAL_PCD_IRQHandler()
1210 epint = USB_ReadDevInEPInterrupt(hpcd->Instance, (uint8_t)epnum); in HAL_PCD_IRQHandler()
1219 if (hpcd->Init.dma_enable == 1U) in HAL_PCD_IRQHandler()
1221 hpcd->IN_ep[epnum].xfer_buff += hpcd->IN_ep[epnum].maxpacket; in HAL_PCD_IRQHandler()
1224 if ((epnum == 0U) && (hpcd->IN_ep[epnum].xfer_len == 0U)) in HAL_PCD_IRQHandler()
1227 (void)USB_EP0_OutStart(hpcd->Instance, 1U, (uint8_t *)hpcd->Setup); in HAL_PCD_IRQHandler()
1232 hpcd->DataInStageCallback(hpcd, (uint8_t)epnum); in HAL_PCD_IRQHandler()
1234 HAL_PCD_DataInStageCallback(hpcd, (uint8_t)epnum); in HAL_PCD_IRQHandler()
1253 ep = &hpcd->IN_ep[epnum]; in HAL_PCD_IRQHandler()
1260 hpcd->ISOINIncompleteCallback(hpcd, (uint8_t)epnum); in HAL_PCD_IRQHandler()
1262 HAL_PCD_ISOINIncompleteCallback(hpcd, (uint8_t)epnum); in HAL_PCD_IRQHandler()
1270 (void)PCD_WriteEmptyTxFifo(hpcd, epnum); in HAL_PCD_IRQHandler()
1279 if (__HAL_PCD_GET_FLAG(hpcd, USB_OTG_GINTSTS_WKUINT)) in HAL_PCD_IRQHandler()
1284 if (hpcd->LPM_State == LPM_L1) in HAL_PCD_IRQHandler()
1286 hpcd->LPM_State = LPM_L0; in HAL_PCD_IRQHandler()
1289 hpcd->LPMCallback(hpcd, PCD_LPM_L0_ACTIVE); in HAL_PCD_IRQHandler()
1291 HAL_PCDEx_LPM_Callback(hpcd, PCD_LPM_L0_ACTIVE); in HAL_PCD_IRQHandler()
1297 hpcd->ResumeCallback(hpcd); in HAL_PCD_IRQHandler()
1299 HAL_PCD_ResumeCallback(hpcd); in HAL_PCD_IRQHandler()
1303 __HAL_PCD_CLEAR_FLAG(hpcd, USB_OTG_GINTSTS_WKUINT); in HAL_PCD_IRQHandler()
1307 if (__HAL_PCD_GET_FLAG(hpcd, USB_OTG_GINTSTS_USBSUSP)) in HAL_PCD_IRQHandler()
1312 hpcd->SuspendCallback(hpcd); in HAL_PCD_IRQHandler()
1314 HAL_PCD_SuspendCallback(hpcd); in HAL_PCD_IRQHandler()
1317 __HAL_PCD_CLEAR_FLAG(hpcd, USB_OTG_GINTSTS_USBSUSP); in HAL_PCD_IRQHandler()
1321 if (__HAL_PCD_GET_FLAG(hpcd, USB_OTG_GINTSTS_LPMINT)) in HAL_PCD_IRQHandler()
1323 __HAL_PCD_CLEAR_FLAG(hpcd, USB_OTG_GINTSTS_LPMINT); in HAL_PCD_IRQHandler()
1325 if (hpcd->LPM_State == LPM_L0) in HAL_PCD_IRQHandler()
1327 hpcd->LPM_State = LPM_L1; in HAL_PCD_IRQHandler()
1328 hpcd->BESL = (hpcd->Instance->GLPMCFG & USB_OTG_GLPMCFG_BESL) >> 2U; in HAL_PCD_IRQHandler()
1331 hpcd->LPMCallback(hpcd, PCD_LPM_L1_ACTIVE); in HAL_PCD_IRQHandler()
1333 HAL_PCDEx_LPM_Callback(hpcd, PCD_LPM_L1_ACTIVE); in HAL_PCD_IRQHandler()
1339 hpcd->SuspendCallback(hpcd); in HAL_PCD_IRQHandler()
1341 HAL_PCD_SuspendCallback(hpcd); in HAL_PCD_IRQHandler()
1347 if (__HAL_PCD_GET_FLAG(hpcd, USB_OTG_GINTSTS_USBRST)) in HAL_PCD_IRQHandler()
1350 (void)USB_FlushTxFifo(hpcd->Instance, 0x10U); in HAL_PCD_IRQHandler()
1352 for (i = 0U; i < hpcd->Init.dev_endpoints; i++) in HAL_PCD_IRQHandler()
1362 if (hpcd->Init.use_dedicated_ep1 != 0U) in HAL_PCD_IRQHandler()
1389 (void)USB_EP0_OutStart(hpcd->Instance, (uint8_t)hpcd->Init.dma_enable, in HAL_PCD_IRQHandler()
1390 (uint8_t *)hpcd->Setup); in HAL_PCD_IRQHandler()
1392 __HAL_PCD_CLEAR_FLAG(hpcd, USB_OTG_GINTSTS_USBRST); in HAL_PCD_IRQHandler()
1396 if (__HAL_PCD_GET_FLAG(hpcd, USB_OTG_GINTSTS_ENUMDNE)) in HAL_PCD_IRQHandler()
1398 (void)USB_ActivateSetup(hpcd->Instance); in HAL_PCD_IRQHandler()
1399 hpcd->Init.speed = USB_GetDevSpeed(hpcd->Instance); in HAL_PCD_IRQHandler()
1402 (void)USB_SetTurnaroundTime(hpcd->Instance, in HAL_PCD_IRQHandler()
1404 (uint8_t)hpcd->Init.speed); in HAL_PCD_IRQHandler()
1407 hpcd->ResetCallback(hpcd); in HAL_PCD_IRQHandler()
1409 HAL_PCD_ResetCallback(hpcd); in HAL_PCD_IRQHandler()
1412 __HAL_PCD_CLEAR_FLAG(hpcd, USB_OTG_GINTSTS_ENUMDNE); in HAL_PCD_IRQHandler()
1416 if (__HAL_PCD_GET_FLAG(hpcd, USB_OTG_GINTSTS_SOF)) in HAL_PCD_IRQHandler()
1419 hpcd->SOFCallback(hpcd); in HAL_PCD_IRQHandler()
1421 HAL_PCD_SOFCallback(hpcd); in HAL_PCD_IRQHandler()
1424 __HAL_PCD_CLEAR_FLAG(hpcd, USB_OTG_GINTSTS_SOF); in HAL_PCD_IRQHandler()
1428 if (__HAL_PCD_GET_FLAG(hpcd, USB_OTG_GINTSTS_BOUTNAKEFF)) in HAL_PCD_IRQHandler()
1432 for (epnum = 1U; epnum < hpcd->Init.dev_endpoints; epnum++) in HAL_PCD_IRQHandler()
1434 if (hpcd->OUT_ep[epnum].is_iso_incomplete == 1U) in HAL_PCD_IRQHandler()
1437 (void)HAL_PCD_EP_Abort(hpcd, (uint8_t)epnum); in HAL_PCD_IRQHandler()
1443 if (__HAL_PCD_GET_FLAG(hpcd, USB_OTG_GINTSTS_IISOIXFR)) in HAL_PCD_IRQHandler()
1445 for (epnum = 1U; epnum < hpcd->Init.dev_endpoints; epnum++) in HAL_PCD_IRQHandler()
1449 if ((hpcd->IN_ep[epnum].type == EP_TYPE_ISOC) && in HAL_PCD_IRQHandler()
1452 hpcd->IN_ep[epnum].is_iso_incomplete = 1U; in HAL_PCD_IRQHandler()
1455 (void)HAL_PCD_EP_Abort(hpcd, (uint8_t)(epnum | 0x80U)); in HAL_PCD_IRQHandler()
1459 __HAL_PCD_CLEAR_FLAG(hpcd, USB_OTG_GINTSTS_IISOIXFR); in HAL_PCD_IRQHandler()
1463 if (__HAL_PCD_GET_FLAG(hpcd, USB_OTG_GINTSTS_PXFR_INCOMPISOOUT)) in HAL_PCD_IRQHandler()
1465 for (epnum = 1U; epnum < hpcd->Init.dev_endpoints; epnum++) in HAL_PCD_IRQHandler()
1469 if ((hpcd->OUT_ep[epnum].type == EP_TYPE_ISOC) && in HAL_PCD_IRQHandler()
1471 ((RegVal & (0x1U << 16)) == (hpcd->FrameNumber & 0x1U))) in HAL_PCD_IRQHandler()
1473 hpcd->OUT_ep[epnum].is_iso_incomplete = 1U; in HAL_PCD_IRQHandler()
1485 __HAL_PCD_CLEAR_FLAG(hpcd, USB_OTG_GINTSTS_PXFR_INCOMPISOOUT); in HAL_PCD_IRQHandler()
1489 if (__HAL_PCD_GET_FLAG(hpcd, USB_OTG_GINTSTS_SRQINT)) in HAL_PCD_IRQHandler()
1492 hpcd->ConnectCallback(hpcd); in HAL_PCD_IRQHandler()
1494 HAL_PCD_ConnectCallback(hpcd); in HAL_PCD_IRQHandler()
1497 __HAL_PCD_CLEAR_FLAG(hpcd, USB_OTG_GINTSTS_SRQINT); in HAL_PCD_IRQHandler()
1501 if (__HAL_PCD_GET_FLAG(hpcd, USB_OTG_GINTSTS_OTGINT)) in HAL_PCD_IRQHandler()
1503 RegVal = hpcd->Instance->GOTGINT; in HAL_PCD_IRQHandler()
1508 hpcd->DisconnectCallback(hpcd); in HAL_PCD_IRQHandler()
1510 HAL_PCD_DisconnectCallback(hpcd); in HAL_PCD_IRQHandler()
1513 hpcd->Instance->GOTGINT |= RegVal; in HAL_PCD_IRQHandler()
1526 __weak void HAL_PCD_DataOutStageCallback(PCD_HandleTypeDef *hpcd, uint8_t epnum) in HAL_PCD_DataOutStageCallback() argument
1529 UNUSED(hpcd); in HAL_PCD_DataOutStageCallback()
1543 __weak void HAL_PCD_DataInStageCallback(PCD_HandleTypeDef *hpcd, uint8_t epnum) in HAL_PCD_DataInStageCallback() argument
1546 UNUSED(hpcd); in HAL_PCD_DataInStageCallback()
1558 __weak void HAL_PCD_SetupStageCallback(PCD_HandleTypeDef *hpcd) in HAL_PCD_SetupStageCallback() argument
1561 UNUSED(hpcd); in HAL_PCD_SetupStageCallback()
1573 __weak void HAL_PCD_SOFCallback(PCD_HandleTypeDef *hpcd) in HAL_PCD_SOFCallback() argument
1576 UNUSED(hpcd); in HAL_PCD_SOFCallback()
1588 __weak void HAL_PCD_ResetCallback(PCD_HandleTypeDef *hpcd) in HAL_PCD_ResetCallback() argument
1591 UNUSED(hpcd); in HAL_PCD_ResetCallback()
1603 __weak void HAL_PCD_SuspendCallback(PCD_HandleTypeDef *hpcd) in HAL_PCD_SuspendCallback() argument
1606 UNUSED(hpcd); in HAL_PCD_SuspendCallback()
1618 __weak void HAL_PCD_ResumeCallback(PCD_HandleTypeDef *hpcd) in HAL_PCD_ResumeCallback() argument
1621 UNUSED(hpcd); in HAL_PCD_ResumeCallback()
1634 __weak void HAL_PCD_ISOOUTIncompleteCallback(PCD_HandleTypeDef *hpcd, uint8_t epnum) in HAL_PCD_ISOOUTIncompleteCallback() argument
1637 UNUSED(hpcd); in HAL_PCD_ISOOUTIncompleteCallback()
1651 __weak void HAL_PCD_ISOINIncompleteCallback(PCD_HandleTypeDef *hpcd, uint8_t epnum) in HAL_PCD_ISOINIncompleteCallback() argument
1654 UNUSED(hpcd); in HAL_PCD_ISOINIncompleteCallback()
1667 __weak void HAL_PCD_ConnectCallback(PCD_HandleTypeDef *hpcd) in HAL_PCD_ConnectCallback() argument
1670 UNUSED(hpcd); in HAL_PCD_ConnectCallback()
1682 __weak void HAL_PCD_DisconnectCallback(PCD_HandleTypeDef *hpcd) in HAL_PCD_DisconnectCallback() argument
1685 UNUSED(hpcd); in HAL_PCD_DisconnectCallback()
1716 HAL_StatusTypeDef HAL_PCD_DevConnect(PCD_HandleTypeDef *hpcd) in HAL_PCD_DevConnect() argument
1718 USB_OTG_GlobalTypeDef *USBx = hpcd->Instance; in HAL_PCD_DevConnect()
1720 __HAL_LOCK(hpcd); in HAL_PCD_DevConnect()
1723 (hpcd->Init.battery_charging_enable == 1U)) in HAL_PCD_DevConnect()
1728 (void)USB_DevConnect(hpcd->Instance); in HAL_PCD_DevConnect()
1729 __HAL_UNLOCK(hpcd); in HAL_PCD_DevConnect()
1739 HAL_StatusTypeDef HAL_PCD_DevDisconnect(PCD_HandleTypeDef *hpcd) in HAL_PCD_DevDisconnect() argument
1741 USB_OTG_GlobalTypeDef *USBx = hpcd->Instance; in HAL_PCD_DevDisconnect()
1743 __HAL_LOCK(hpcd); in HAL_PCD_DevDisconnect()
1744 (void)USB_DevDisconnect(hpcd->Instance); in HAL_PCD_DevDisconnect()
1747 (hpcd->Init.battery_charging_enable == 1U)) in HAL_PCD_DevDisconnect()
1753 __HAL_UNLOCK(hpcd); in HAL_PCD_DevDisconnect()
1764 HAL_StatusTypeDef HAL_PCD_SetAddress(PCD_HandleTypeDef *hpcd, uint8_t address) in HAL_PCD_SetAddress() argument
1766 __HAL_LOCK(hpcd); in HAL_PCD_SetAddress()
1767 hpcd->USB_Address = address; in HAL_PCD_SetAddress()
1768 (void)USB_SetDevAddress(hpcd->Instance, address); in HAL_PCD_SetAddress()
1769 __HAL_UNLOCK(hpcd); in HAL_PCD_SetAddress()
1781 HAL_StatusTypeDef HAL_PCD_EP_Open(PCD_HandleTypeDef *hpcd, uint8_t ep_addr, in HAL_PCD_EP_Open() argument
1789 ep = &hpcd->IN_ep[ep_addr & EP_ADDR_MSK]; in HAL_PCD_EP_Open()
1794 ep = &hpcd->OUT_ep[ep_addr & EP_ADDR_MSK]; in HAL_PCD_EP_Open()
1814 __HAL_LOCK(hpcd); in HAL_PCD_EP_Open()
1815 (void)USB_ActivateEndpoint(hpcd->Instance, ep); in HAL_PCD_EP_Open()
1816 __HAL_UNLOCK(hpcd); in HAL_PCD_EP_Open()
1827 HAL_StatusTypeDef HAL_PCD_EP_Close(PCD_HandleTypeDef *hpcd, uint8_t ep_addr) in HAL_PCD_EP_Close() argument
1833 ep = &hpcd->IN_ep[ep_addr & EP_ADDR_MSK]; in HAL_PCD_EP_Close()
1838 ep = &hpcd->OUT_ep[ep_addr & EP_ADDR_MSK]; in HAL_PCD_EP_Close()
1843 __HAL_LOCK(hpcd); in HAL_PCD_EP_Close()
1844 (void)USB_DeactivateEndpoint(hpcd->Instance, ep); in HAL_PCD_EP_Close()
1845 __HAL_UNLOCK(hpcd); in HAL_PCD_EP_Close()
1858 HAL_StatusTypeDef HAL_PCD_EP_Receive(PCD_HandleTypeDef *hpcd, uint8_t ep_addr, uint8_t *pBuf, uint3… in HAL_PCD_EP_Receive() argument
1862 ep = &hpcd->OUT_ep[ep_addr & EP_ADDR_MSK]; in HAL_PCD_EP_Receive()
1871 if (hpcd->Init.dma_enable == 1U) in HAL_PCD_EP_Receive()
1876 (void)USB_EPStartXfer(hpcd->Instance, ep, (uint8_t)hpcd->Init.dma_enable); in HAL_PCD_EP_Receive()
1887 uint32_t HAL_PCD_EP_GetRxCount(PCD_HandleTypeDef const *hpcd, uint8_t ep_addr) in HAL_PCD_EP_GetRxCount() argument
1889 return hpcd->OUT_ep[ep_addr & EP_ADDR_MSK].xfer_count; in HAL_PCD_EP_GetRxCount()
1899 HAL_StatusTypeDef HAL_PCD_EP_Transmit(PCD_HandleTypeDef *hpcd, uint8_t ep_addr, uint8_t *pBuf, uint… in HAL_PCD_EP_Transmit() argument
1903 ep = &hpcd->IN_ep[ep_addr & EP_ADDR_MSK]; in HAL_PCD_EP_Transmit()
1912 if (hpcd->Init.dma_enable == 1U) in HAL_PCD_EP_Transmit()
1917 (void)USB_EPStartXfer(hpcd->Instance, ep, (uint8_t)hpcd->Init.dma_enable); in HAL_PCD_EP_Transmit()
1928 HAL_StatusTypeDef HAL_PCD_EP_SetStall(PCD_HandleTypeDef *hpcd, uint8_t ep_addr) in HAL_PCD_EP_SetStall() argument
1932 if (((uint32_t)ep_addr & EP_ADDR_MSK) > hpcd->Init.dev_endpoints) in HAL_PCD_EP_SetStall()
1939 ep = &hpcd->IN_ep[ep_addr & EP_ADDR_MSK]; in HAL_PCD_EP_SetStall()
1944 ep = &hpcd->OUT_ep[ep_addr]; in HAL_PCD_EP_SetStall()
1951 __HAL_LOCK(hpcd); in HAL_PCD_EP_SetStall()
1953 (void)USB_EPSetStall(hpcd->Instance, ep); in HAL_PCD_EP_SetStall()
1957 (void)USB_EP0_OutStart(hpcd->Instance, (uint8_t)hpcd->Init.dma_enable, (uint8_t *)hpcd->Setup); in HAL_PCD_EP_SetStall()
1960 __HAL_UNLOCK(hpcd); in HAL_PCD_EP_SetStall()
1971 HAL_StatusTypeDef HAL_PCD_EP_ClrStall(PCD_HandleTypeDef *hpcd, uint8_t ep_addr) in HAL_PCD_EP_ClrStall() argument
1975 if (((uint32_t)ep_addr & 0x0FU) > hpcd->Init.dev_endpoints) in HAL_PCD_EP_ClrStall()
1982 ep = &hpcd->IN_ep[ep_addr & EP_ADDR_MSK]; in HAL_PCD_EP_ClrStall()
1987 ep = &hpcd->OUT_ep[ep_addr & EP_ADDR_MSK]; in HAL_PCD_EP_ClrStall()
1994 __HAL_LOCK(hpcd); in HAL_PCD_EP_ClrStall()
1995 (void)USB_EPClearStall(hpcd->Instance, ep); in HAL_PCD_EP_ClrStall()
1996 __HAL_UNLOCK(hpcd); in HAL_PCD_EP_ClrStall()
2007 HAL_StatusTypeDef HAL_PCD_EP_Abort(PCD_HandleTypeDef *hpcd, uint8_t ep_addr) in HAL_PCD_EP_Abort() argument
2014 ep = &hpcd->IN_ep[ep_addr & EP_ADDR_MSK]; in HAL_PCD_EP_Abort()
2018 ep = &hpcd->OUT_ep[ep_addr & EP_ADDR_MSK]; in HAL_PCD_EP_Abort()
2022 ret = USB_EPStopXfer(hpcd->Instance, ep); in HAL_PCD_EP_Abort()
2033 HAL_StatusTypeDef HAL_PCD_EP_Flush(PCD_HandleTypeDef *hpcd, uint8_t ep_addr) in HAL_PCD_EP_Flush() argument
2035 __HAL_LOCK(hpcd); in HAL_PCD_EP_Flush()
2039 (void)USB_FlushTxFifo(hpcd->Instance, (uint32_t)ep_addr & EP_ADDR_MSK); in HAL_PCD_EP_Flush()
2043 (void)USB_FlushRxFifo(hpcd->Instance); in HAL_PCD_EP_Flush()
2046 __HAL_UNLOCK(hpcd); in HAL_PCD_EP_Flush()
2056 HAL_StatusTypeDef HAL_PCD_ActivateRemoteWakeup(PCD_HandleTypeDef *hpcd) in HAL_PCD_ActivateRemoteWakeup() argument
2058 return (USB_ActivateRemoteWakeup(hpcd->Instance)); in HAL_PCD_ActivateRemoteWakeup()
2066 HAL_StatusTypeDef HAL_PCD_DeActivateRemoteWakeup(PCD_HandleTypeDef *hpcd) in HAL_PCD_DeActivateRemoteWakeup() argument
2068 return (USB_DeActivateRemoteWakeup(hpcd->Instance)); in HAL_PCD_DeActivateRemoteWakeup()
2095 PCD_StateTypeDef HAL_PCD_GetState(PCD_HandleTypeDef const *hpcd) in HAL_PCD_GetState() argument
2097 return hpcd->State; in HAL_PCD_GetState()
2107 HAL_StatusTypeDef HAL_PCD_SetTestMode(const PCD_HandleTypeDef *hpcd, uint8_t testmode) in HAL_PCD_SetTestMode() argument
2109 const USB_OTG_GlobalTypeDef *USBx = hpcd->Instance; in HAL_PCD_SetTestMode()
2148 static HAL_StatusTypeDef PCD_WriteEmptyTxFifo(PCD_HandleTypeDef *hpcd, uint32_t epnum) in PCD_WriteEmptyTxFifo() argument
2150 USB_OTG_GlobalTypeDef *USBx = hpcd->Instance; in PCD_WriteEmptyTxFifo()
2157 ep = &hpcd->IN_ep[epnum]; in PCD_WriteEmptyTxFifo()
2186 (uint8_t)hpcd->Init.dma_enable); in PCD_WriteEmptyTxFifo()
2208 static HAL_StatusTypeDef PCD_EP_OutXfrComplete_int(PCD_HandleTypeDef *hpcd, uint32_t epnum) in PCD_EP_OutXfrComplete_int() argument
2211 const USB_OTG_GlobalTypeDef *USBx = hpcd->Instance; in PCD_EP_OutXfrComplete_int()
2216 if (hpcd->Init.dma_enable == 1U) in PCD_EP_OutXfrComplete_int()
2241 ep = &hpcd->OUT_ep[epnum]; in PCD_EP_OutXfrComplete_int()
2251 (void)USB_EP0_OutStart(hpcd->Instance, 1U, (uint8_t *)hpcd->Setup); in PCD_EP_OutXfrComplete_int()
2260 hpcd->DataOutStageCallback(hpcd, (uint8_t)epnum); in PCD_EP_OutXfrComplete_int()
2262 HAL_PCD_DataOutStageCallback(hpcd, (uint8_t)epnum); in PCD_EP_OutXfrComplete_int()
2288 hpcd->DataOutStageCallback(hpcd, (uint8_t)epnum); in PCD_EP_OutXfrComplete_int()
2290 HAL_PCD_DataOutStageCallback(hpcd, (uint8_t)epnum); in PCD_EP_OutXfrComplete_int()
2296 if ((epnum == 0U) && (hpcd->OUT_ep[epnum].xfer_len == 0U)) in PCD_EP_OutXfrComplete_int()
2299 (void)USB_EP0_OutStart(hpcd->Instance, 0U, (uint8_t *)hpcd->Setup); in PCD_EP_OutXfrComplete_int()
2303 hpcd->DataOutStageCallback(hpcd, (uint8_t)epnum); in PCD_EP_OutXfrComplete_int()
2305 HAL_PCD_DataOutStageCallback(hpcd, (uint8_t)epnum); in PCD_EP_OutXfrComplete_int()
2320 static HAL_StatusTypeDef PCD_EP_OutSetupPacket_int(PCD_HandleTypeDef *hpcd, uint32_t epnum) in PCD_EP_OutSetupPacket_int() argument
2322 const USB_OTG_GlobalTypeDef *USBx = hpcd->Instance; in PCD_EP_OutSetupPacket_int()
2335 hpcd->SetupStageCallback(hpcd); in PCD_EP_OutSetupPacket_int()
2337 HAL_PCD_SetupStageCallback(hpcd); in PCD_EP_OutSetupPacket_int()
2340 if ((gSNPSiD > USB_OTG_CORE_ID_300A) && (hpcd->Init.dma_enable == 1U)) in PCD_EP_OutSetupPacket_int()
2342 (void)USB_EP0_OutStart(hpcd->Instance, 1U, (uint8_t *)hpcd->Setup); in PCD_EP_OutSetupPacket_int()