Implement the HAL callback function `HAL_PCD_ISOINIncompleteCallback` in which the endpoint write semaphore is given back, thus allowing subsequent writes to the endpoint after an isochronous transfer has been incompleted (not read by the host). This approach was chosen because it is similar to what is done in the already implemented HAL callback `HAL_PCD_DataInStageCallback` which also gives the write semaphore back but also calls the endpoint callback function. The reason for not also calling the endpoint callback function is because I do not see any appropriate cb_status (`enum usb_dc_ep_cb_status_code`) to pass. If passing `USB_DC_EP_DATA_IN` is okay even though "In transaction done on this EP" is not completely true, then this should also be added. This has been tested by setting up an isochronous endpoint, writing to it, and verify that `HAL_PCD_DataInStageCallback` is called and subsequent writes are possible. Signed-off-by: Algot Axelzon <algot.axelzon@satcube.com> |
||
|---|---|---|
| .. | ||
| CMakeLists.txt | ||
| Kconfig | ||
| usb_dc_dw_stm32.h | ||
| usb_dc_dw.c | ||
| usb_dc_it82xx2.c | ||
| usb_dc_kinetis.c | ||
| usb_dc_mcux.c | ||
| usb_dc_native_posix_adapt.c | ||
| usb_dc_native_posix_adapt.h | ||
| usb_dc_native_posix.c | ||
| usb_dc_nrfx.c | ||
| usb_dc_numaker.c | ||
| usb_dc_rpi_pico.c | ||
| usb_dc_sam0.c | ||
| usb_dc_sam_usbc.c | ||
| usb_dc_sam_usbhs.c | ||
| usb_dc_smartbond.c | ||
| usb_dc_stm32.c | ||