use dcd_edpt0_status_complete() to prepare for setup packet for samd21/samd51

This commit is contained in:
hathach
2019-11-28 13:48:55 +07:00
parent d7558e8a0f
commit e9725dcdbe
2 changed files with 6 additions and 13 deletions

View File

@@ -146,6 +146,9 @@ void dcd_edpt0_status_complete(uint8_t rhport, tusb_control_request_t const * re
uint8_t const dev_addr = (uint8_t) request->wValue;
USB->DEVICE.DADD.reg = USB_DEVICE_DADD_DADD(dev_addr) | USB_DEVICE_DADD_ADDEN;
}
// Just finished status stage, prepare for next setup packet
dcd_edpt_xfer(rhport, 0x00, _setup_packet, sizeof(_setup_packet));
}
bool dcd_edpt_open (uint8_t rhport, tusb_desc_endpoint_t const * desc_edpt)
@@ -347,11 +350,6 @@ void transfer_complete(uint8_t direction) {
}
dcd_event_xfer_complete(0, ep_addr, total_transfer_size, XFER_RESULT_SUCCESS, true);
// just finished status stage (total size = 0), prepare for next setup packet
if (epnum == 0 && total_transfer_size == 0) {
dcd_edpt_xfer(0, 0, _setup_packet, sizeof(_setup_packet));
}
if (direction == TUSB_DIR_IN) {
ep->EPINTFLAG.reg = USB_DEVICE_EPINTFLAG_TRCPT1;
} else {