diff options
Diffstat (limited to 'tinyusb')
| -rw-r--r-- | tinyusb/device/dcd_lpc_11uxx_13uxx.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/tinyusb/device/dcd_lpc_11uxx_13uxx.c b/tinyusb/device/dcd_lpc_11uxx_13uxx.c index 4eef8f7dd..51719af6b 100644 --- a/tinyusb/device/dcd_lpc_11uxx_13uxx.c +++ b/tinyusb/device/dcd_lpc_11uxx_13uxx.c @@ -423,12 +423,13 @@ bool dcd_pipe_is_stalled(endpoint_handle_t edpt_hdl) tusb_error_t dcd_pipe_clear_stall(uint8_t coreid, uint8_t edpt_addr)
{
uint8_t ep_id = edpt_addr2phy(edpt_addr);
- uint8_t active_buffer = BIT_TEST_(LPC_USB->EPINUSE, ep_id) ? 1 : 0;
+// uint8_t active_buffer = BIT_TEST_(LPC_USB->EPINUSE, ep_id) ? 1 : 0;
dcd_data.qhd[ep_id][0].stall = dcd_data.qhd[ep_id][1].stall = 0;
- dcd_data.qhd[ep_id][active_buffer].toggle_reset = 1;
- dcd_data.qhd[ep_id][active_buffer].feedback_toggle = 0;
+ // since the next transfer always take place on buffer0 --> clear buffer0 toggle
+ dcd_data.qhd[ep_id][0].toggle_reset = 1;
+ dcd_data.qhd[ep_id][0].feedback_toggle = 0;
//------------- clear stall must carry on any previously queued transfer -------------//
if ( dcd_data.next_td[ep_id].total_bytes != 0 )
|
