diff --git a/hw/mcu/nxp/lpc43xx/tusb_port/dcd_lpc43xx.c b/hw/mcu/nxp/lpc43xx/tusb_port/dcd_lpc43xx.c index 933dda06..f742548c 100644 --- a/hw/mcu/nxp/lpc43xx/tusb_port/dcd_lpc43xx.c +++ b/hw/mcu/nxp/lpc43xx/tusb_port/dcd_lpc43xx.c @@ -371,13 +371,11 @@ static inline volatile uint32_t * get_reg_control_addr(uint8_t coreid, uint8_t p return &(LPC_USB[coreid]->ENDPTCTRL0) + edpt_phy2log(physical_endpoint); } -tusb_error_t dcd_pipe_stall(endpoint_handle_t edpt_hdl) +void hal_dcd_pipe_stall(endpoint_handle_t edpt_hdl) { volatile uint32_t * reg_control = get_reg_control_addr(edpt_hdl.coreid, edpt_hdl.index); (*reg_control) |= ENDPTCTRL_MASK_STALL << (edpt_hdl.index & 0x01 ? 16 : 0); - - return TUSB_ERROR_NONE; } tusb_error_t dcd_pipe_clear_stall(uint8_t coreid, uint8_t edpt_addr) diff --git a/tinyusb/class/msc_device.c b/tinyusb/class/msc_device.c index 7e787c49..ac595366 100644 --- a/tinyusb/class/msc_device.c +++ b/tinyusb/class/msc_device.c @@ -186,7 +186,7 @@ tusb_error_t mscd_xfer_cb(endpoint_handle_t edpt_hdl, tusb_event_t event, uint32 if ( p_buffer == NULL || actual_length == 0 ) { // application does not provide data to response --> possibly unsupported SCSI command - ASSERT_STATUS( dcd_pipe_stall(edpt_data) ); + hal_dcd_pipe_stall(edpt_data); p_csw->status = MSC_CSW_STATUS_FAILED; }else { @@ -241,7 +241,7 @@ static bool read10_write10_data_xfer(mscd_interface_t* p_msc) p_csw->data_residue = p_cbw->xfer_bytes; p_csw->status = MSC_CSW_STATUS_FAILED; - (void) dcd_pipe_stall(edpt_hdl); + hal_dcd_pipe_stall(edpt_hdl); return true; } else if (xferred_block < block_count) diff --git a/tinyusb/device/dcd.h b/tinyusb/device/dcd.h index 5a4ada11..13cdbbbb 100644 --- a/tinyusb/device/dcd.h +++ b/tinyusb/device/dcd.h @@ -91,7 +91,7 @@ bool hal_dcd_pipe_open(uint8_t coreid, tusb_descriptor_endpoint_t const * p_endp tusb_error_t dcd_pipe_queue_xfer(endpoint_handle_t edpt_hdl, uint8_t * buffer, uint16_t total_bytes); // only queue, not transferring yet tusb_error_t hal_dcd_pipe_xfer(endpoint_handle_t edpt_hdl, uint8_t * buffer, uint16_t total_bytes, bool int_on_complete); -tusb_error_t dcd_pipe_stall(endpoint_handle_t edpt_hdl); +void hal_dcd_pipe_stall(endpoint_handle_t edpt_hdl); bool dcd_pipe_is_busy(endpoint_handle_t edpt_hdl); diff --git a/tinyusb/device/dcd_lpc175x_6x.c b/tinyusb/device/dcd_lpc175x_6x.c index 8d3c1a6d..bdd06497 100644 --- a/tinyusb/device/dcd_lpc175x_6x.c +++ b/tinyusb/device/dcd_lpc175x_6x.c @@ -453,10 +453,9 @@ bool dcd_pipe_is_busy(endpoint_handle_t edpt_hdl) return (dcd_data.udca[edpt_hdl.index] != NULL && !dcd_data.udca[edpt_hdl.index]->is_retired); } -tusb_error_t dcd_pipe_stall(endpoint_handle_t edpt_hdl) +void hal_dcd_pipe_stall(endpoint_handle_t edpt_hdl) { sie_write(SIE_CMDCODE_ENDPOINT_SET_STATUS+edpt_hdl.index, 1, SIE_SET_ENDPOINT_STALLED_MASK); - return TUSB_ERROR_NONE; } tusb_error_t dcd_pipe_clear_stall(uint8_t coreid, uint8_t edpt_addr) diff --git a/tinyusb/device/dcd_lpc_11uxx_13uxx.c b/tinyusb/device/dcd_lpc_11uxx_13uxx.c index 3b315b31..f5422e99 100644 --- a/tinyusb/device/dcd_lpc_11uxx_13uxx.c +++ b/tinyusb/device/dcd_lpc_11uxx_13uxx.c @@ -428,11 +428,9 @@ static inline uint8_t edpt_phy2log(uint8_t physical_endpoint) //--------------------------------------------------------------------+ // BULK/INTERRUPT/ISOCHRONOUS PIPE API //--------------------------------------------------------------------+ -tusb_error_t dcd_pipe_stall(endpoint_handle_t edpt_hdl) +void hal_dcd_pipe_stall(endpoint_handle_t edpt_hdl) { dcd_data.qhd[edpt_hdl.index][0].stall = dcd_data.qhd[edpt_hdl.index][1].stall = 1; - - return TUSB_ERROR_NONE; } bool dcd_pipe_is_stalled(endpoint_handle_t edpt_hdl)