Lines Matching refs:ep
262 HAL_StatusTypeDef USB_ActivateEndpoint(USB_DRD_TypeDef *USBx, USB_DRD_EPTypeDef *ep) in USB_ActivateEndpoint() argument
267 wEpRegVal = PCD_GET_ENDPOINT(USBx, ep->num) & USB_EP_T_MASK; in USB_ActivateEndpoint()
270 switch (ep->type) in USB_ActivateEndpoint()
293 PCD_SET_ENDPOINT(USBx, ep->num, (wEpRegVal | USB_EP_VTRX | USB_EP_VTTX)); in USB_ActivateEndpoint()
295 PCD_SET_EP_ADDRESS(USBx, ep->num, ep->num); in USB_ActivateEndpoint()
297 if (ep->doublebuffer == 0U) in USB_ActivateEndpoint()
299 if (ep->is_in != 0U) in USB_ActivateEndpoint()
302 PCD_SET_EP_TX_ADDRESS(USBx, ep->num, ep->pmaadress); in USB_ActivateEndpoint()
303 PCD_CLEAR_TX_DTOG(USBx, ep->num); in USB_ActivateEndpoint()
305 if (ep->type != EP_TYPE_ISOC) in USB_ActivateEndpoint()
308 PCD_SET_EP_TX_STATUS(USBx, ep->num, USB_EP_TX_NAK); in USB_ActivateEndpoint()
313 PCD_SET_EP_TX_STATUS(USBx, ep->num, USB_EP_TX_DIS); in USB_ActivateEndpoint()
319 PCD_SET_EP_RX_ADDRESS(USBx, ep->num, ep->pmaadress); in USB_ActivateEndpoint()
322 PCD_SET_EP_RX_CNT(USBx, ep->num, ep->maxpacket); in USB_ActivateEndpoint()
323 PCD_CLEAR_RX_DTOG(USBx, ep->num); in USB_ActivateEndpoint()
325 if (ep->num == 0U) in USB_ActivateEndpoint()
328 PCD_SET_EP_RX_STATUS(USBx, ep->num, USB_EP_RX_VALID); in USB_ActivateEndpoint()
333 PCD_SET_EP_RX_STATUS(USBx, ep->num, USB_EP_RX_NAK); in USB_ActivateEndpoint()
341 if (ep->type == EP_TYPE_BULK) in USB_ActivateEndpoint()
344 PCD_SET_BULK_EP_DBUF(USBx, ep->num); in USB_ActivateEndpoint()
349 PCD_CLEAR_EP_KIND(USBx, ep->num); in USB_ActivateEndpoint()
353 PCD_SET_EP_DBUF_ADDR(USBx, ep->num, ep->pmaaddr0, ep->pmaaddr1); in USB_ActivateEndpoint()
355 if (ep->is_in == 0U) in USB_ActivateEndpoint()
358 PCD_CLEAR_RX_DTOG(USBx, ep->num); in USB_ActivateEndpoint()
359 PCD_CLEAR_TX_DTOG(USBx, ep->num); in USB_ActivateEndpoint()
361 PCD_SET_EP_RX_STATUS(USBx, ep->num, USB_EP_RX_VALID); in USB_ActivateEndpoint()
362 PCD_SET_EP_TX_STATUS(USBx, ep->num, USB_EP_TX_DIS); in USB_ActivateEndpoint()
367 PCD_CLEAR_RX_DTOG(USBx, ep->num); in USB_ActivateEndpoint()
368 PCD_CLEAR_TX_DTOG(USBx, ep->num); in USB_ActivateEndpoint()
370 if (ep->type != EP_TYPE_ISOC) in USB_ActivateEndpoint()
373 PCD_SET_EP_TX_STATUS(USBx, ep->num, USB_EP_TX_NAK); in USB_ActivateEndpoint()
378 PCD_SET_EP_TX_STATUS(USBx, ep->num, USB_EP_TX_DIS); in USB_ActivateEndpoint()
381 PCD_SET_EP_RX_STATUS(USBx, ep->num, USB_EP_RX_DIS); in USB_ActivateEndpoint()
395 HAL_StatusTypeDef USB_DeactivateEndpoint(USB_DRD_TypeDef *USBx, USB_DRD_EPTypeDef *ep) in USB_DeactivateEndpoint() argument
397 if (ep->doublebuffer == 0U) in USB_DeactivateEndpoint()
399 if (ep->is_in != 0U) in USB_DeactivateEndpoint()
401 PCD_CLEAR_TX_DTOG(USBx, ep->num); in USB_DeactivateEndpoint()
404 PCD_SET_EP_TX_STATUS(USBx, ep->num, USB_EP_TX_DIS); in USB_DeactivateEndpoint()
409 PCD_CLEAR_RX_DTOG(USBx, ep->num); in USB_DeactivateEndpoint()
412 PCD_SET_EP_RX_STATUS(USBx, ep->num, USB_EP_RX_DIS); in USB_DeactivateEndpoint()
419 if (ep->is_in == 0U) in USB_DeactivateEndpoint()
422 PCD_CLEAR_RX_DTOG(USBx, ep->num); in USB_DeactivateEndpoint()
423 PCD_CLEAR_TX_DTOG(USBx, ep->num); in USB_DeactivateEndpoint()
426 PCD_TX_DTOG(USBx, ep->num); in USB_DeactivateEndpoint()
428 PCD_SET_EP_RX_STATUS(USBx, ep->num, USB_EP_RX_DIS); in USB_DeactivateEndpoint()
429 PCD_SET_EP_TX_STATUS(USBx, ep->num, USB_EP_TX_DIS); in USB_DeactivateEndpoint()
434 PCD_CLEAR_RX_DTOG(USBx, ep->num); in USB_DeactivateEndpoint()
435 PCD_CLEAR_TX_DTOG(USBx, ep->num); in USB_DeactivateEndpoint()
436 PCD_RX_DTOG(USBx, ep->num); in USB_DeactivateEndpoint()
439 PCD_SET_EP_TX_STATUS(USBx, ep->num, USB_EP_TX_DIS); in USB_DeactivateEndpoint()
440 PCD_SET_EP_RX_STATUS(USBx, ep->num, USB_EP_RX_DIS); in USB_DeactivateEndpoint()
454 HAL_StatusTypeDef USB_EPStartXfer(USB_DRD_TypeDef *USBx, USB_DRD_EPTypeDef *ep) in USB_EPStartXfer() argument
463 if (ep->is_in == 1U) in USB_EPStartXfer()
466 if (ep->xfer_len > ep->maxpacket) in USB_EPStartXfer()
468 len = ep->maxpacket; in USB_EPStartXfer()
472 len = ep->xfer_len; in USB_EPStartXfer()
476 if (ep->doublebuffer == 0U) in USB_EPStartXfer()
478 USB_WritePMA(USBx, ep->xfer_buff, ep->pmaadress, (uint16_t)len); in USB_EPStartXfer()
479 PCD_SET_EP_TX_CNT(USBx, ep->num, len); in USB_EPStartXfer()
485 if (ep->type == EP_TYPE_BULK) in USB_EPStartXfer()
487 if (ep->xfer_len_db > ep->maxpacket) in USB_EPStartXfer()
490 PCD_SET_BULK_EP_DBUF(USBx, ep->num); in USB_EPStartXfer()
493 ep->xfer_len_db -= len; in USB_EPStartXfer()
496 if ((PCD_GET_ENDPOINT(USBx, ep->num) & USB_EP_DTOG_TX) != 0U) in USB_EPStartXfer()
499 PCD_SET_EP_DBUF1_CNT(USBx, ep->num, ep->is_in, len); in USB_EPStartXfer()
500 pmabuffer = ep->pmaaddr1; in USB_EPStartXfer()
503 USB_WritePMA(USBx, ep->xfer_buff, pmabuffer, (uint16_t)len); in USB_EPStartXfer()
504 ep->xfer_buff += len; in USB_EPStartXfer()
506 if (ep->xfer_len_db > ep->maxpacket) in USB_EPStartXfer()
508 ep->xfer_len_db -= len; in USB_EPStartXfer()
512 len = ep->xfer_len_db; in USB_EPStartXfer()
513 ep->xfer_len_db = 0U; in USB_EPStartXfer()
517 PCD_SET_EP_DBUF0_CNT(USBx, ep->num, ep->is_in, len); in USB_EPStartXfer()
518 pmabuffer = ep->pmaaddr0; in USB_EPStartXfer()
521 USB_WritePMA(USBx, ep->xfer_buff, pmabuffer, (uint16_t)len); in USB_EPStartXfer()
526 PCD_SET_EP_DBUF0_CNT(USBx, ep->num, ep->is_in, len); in USB_EPStartXfer()
527 pmabuffer = ep->pmaaddr0; in USB_EPStartXfer()
530 USB_WritePMA(USBx, ep->xfer_buff, pmabuffer, (uint16_t)len); in USB_EPStartXfer()
531 ep->xfer_buff += len; in USB_EPStartXfer()
533 if (ep->xfer_len_db > ep->maxpacket) in USB_EPStartXfer()
535 ep->xfer_len_db -= len; in USB_EPStartXfer()
539 len = ep->xfer_len_db; in USB_EPStartXfer()
540 ep->xfer_len_db = 0U; in USB_EPStartXfer()
544 PCD_SET_EP_DBUF1_CNT(USBx, ep->num, ep->is_in, len); in USB_EPStartXfer()
545 pmabuffer = ep->pmaaddr1; in USB_EPStartXfer()
548 USB_WritePMA(USBx, ep->xfer_buff, pmabuffer, (uint16_t)len); in USB_EPStartXfer()
554 len = ep->xfer_len_db; in USB_EPStartXfer()
557 PCD_CLEAR_BULK_EP_DBUF(USBx, ep->num); in USB_EPStartXfer()
560 PCD_SET_EP_TX_CNT(USBx, ep->num, len); in USB_EPStartXfer()
561 pmabuffer = ep->pmaaddr0; in USB_EPStartXfer()
564 USB_WritePMA(USBx, ep->xfer_buff, pmabuffer, (uint16_t)len); in USB_EPStartXfer()
570 ep->xfer_len_db -= len; in USB_EPStartXfer()
573 if ((PCD_GET_ENDPOINT(USBx, ep->num) & USB_EP_DTOG_TX) != 0U) in USB_EPStartXfer()
576 PCD_SET_EP_DBUF1_CNT(USBx, ep->num, ep->is_in, len); in USB_EPStartXfer()
577 pmabuffer = ep->pmaaddr1; in USB_EPStartXfer()
580 USB_WritePMA(USBx, ep->xfer_buff, pmabuffer, (uint16_t)len); in USB_EPStartXfer()
585 PCD_SET_EP_DBUF0_CNT(USBx, ep->num, ep->is_in, len); in USB_EPStartXfer()
586 pmabuffer = ep->pmaaddr0; in USB_EPStartXfer()
589 USB_WritePMA(USBx, ep->xfer_buff, pmabuffer, (uint16_t)len); in USB_EPStartXfer()
595 PCD_SET_EP_TX_STATUS(USBx, ep->num, USB_EP_TX_VALID); in USB_EPStartXfer()
599 if (ep->doublebuffer == 0U) in USB_EPStartXfer()
602 if (ep->xfer_len > ep->maxpacket) in USB_EPStartXfer()
604 len = ep->maxpacket; in USB_EPStartXfer()
605 ep->xfer_len -= len; in USB_EPStartXfer()
609 len = ep->xfer_len; in USB_EPStartXfer()
610 ep->xfer_len = 0U; in USB_EPStartXfer()
613 PCD_SET_EP_RX_CNT(USBx, ep->num, len); in USB_EPStartXfer()
620 if (ep->type == EP_TYPE_BULK) in USB_EPStartXfer()
622 PCD_SET_EP_DBUF_CNT(USBx, ep->num, ep->is_in, ep->maxpacket); in USB_EPStartXfer()
625 if (ep->xfer_count != 0U) in USB_EPStartXfer()
628 wEPVal = (uint16_t)PCD_GET_ENDPOINT(USBx, ep->num); in USB_EPStartXfer()
634 PCD_FREE_USER_BUFFER(USBx, ep->num, 0U); in USB_EPStartXfer()
639 else if (ep->type == EP_TYPE_ISOC) in USB_EPStartXfer()
642 if (ep->xfer_len > ep->maxpacket) in USB_EPStartXfer()
644 len = ep->maxpacket; in USB_EPStartXfer()
645 ep->xfer_len -= len; in USB_EPStartXfer()
649 len = ep->xfer_len; in USB_EPStartXfer()
650 ep->xfer_len = 0U; in USB_EPStartXfer()
652 PCD_SET_EP_DBUF_CNT(USBx, ep->num, ep->is_in, len); in USB_EPStartXfer()
661 PCD_SET_EP_RX_STATUS(USBx, ep->num, USB_EP_RX_VALID); in USB_EPStartXfer()
674 HAL_StatusTypeDef USB_EPSetStall(USB_DRD_TypeDef *USBx, USB_DRD_EPTypeDef *ep) in USB_EPSetStall() argument
676 if (ep->is_in != 0U) in USB_EPSetStall()
678 PCD_SET_EP_TX_STATUS(USBx, ep->num, USB_EP_TX_STALL); in USB_EPSetStall()
682 PCD_SET_EP_RX_STATUS(USBx, ep->num, USB_EP_RX_STALL); in USB_EPSetStall()
694 HAL_StatusTypeDef USB_EPClearStall(USB_DRD_TypeDef *USBx, USB_DRD_EPTypeDef *ep) in USB_EPClearStall() argument
696 if (ep->doublebuffer == 0U) in USB_EPClearStall()
698 if (ep->is_in != 0U) in USB_EPClearStall()
700 PCD_CLEAR_TX_DTOG(USBx, ep->num); in USB_EPClearStall()
702 if (ep->type != EP_TYPE_ISOC) in USB_EPClearStall()
705 PCD_SET_EP_TX_STATUS(USBx, ep->num, USB_EP_TX_NAK); in USB_EPClearStall()
710 PCD_CLEAR_RX_DTOG(USBx, ep->num); in USB_EPClearStall()
713 PCD_SET_EP_RX_STATUS(USBx, ep->num, USB_EP_RX_VALID); in USB_EPClearStall()
726 HAL_StatusTypeDef USB_EPStopXfer(USB_DRD_TypeDef *USBx, USB_DRD_EPTypeDef *ep) in USB_EPStopXfer() argument
729 if (ep->is_in == 1U) in USB_EPStopXfer()
731 if (ep->doublebuffer == 0U) in USB_EPStopXfer()
733 if (ep->type != EP_TYPE_ISOC) in USB_EPStopXfer()
736 PCD_SET_EP_TX_STATUS(USBx, ep->num, USB_EP_TX_NAK); in USB_EPStopXfer()
741 PCD_SET_EP_TX_STATUS(USBx, ep->num, USB_EP_TX_DIS); in USB_EPStopXfer()
747 if (ep->doublebuffer == 0U) in USB_EPStopXfer()
749 if (ep->type != EP_TYPE_ISOC) in USB_EPStopXfer()
752 PCD_SET_EP_RX_STATUS(USBx, ep->num, USB_EP_RX_NAK); in USB_EPStopXfer()
757 PCD_SET_EP_RX_STATUS(USBx, ep->num, USB_EP_RX_DIS); in USB_EPStopXfer()