replace dcd_xfer_complete by dcd_xfer_complete()
This commit is contained in:
@@ -414,14 +414,12 @@ void USBD_IRQHandler(void)
|
||||
}
|
||||
}
|
||||
|
||||
dcd_event_t event = { .rhport = 0 };
|
||||
|
||||
/*------------- Interrupt Processing -------------*/
|
||||
if ( int_status & USBD_INTEN_USBRESET_Msk )
|
||||
{
|
||||
bus_reset();
|
||||
|
||||
event.event_id = DCD_EVENT_BUS_RESET;
|
||||
dcd_event_t event = { .rhport = 0, .event_id = DCD_EVENT_BUS_RESET };
|
||||
dcd_event_handler(&event, true);
|
||||
}
|
||||
|
||||
@@ -439,7 +437,7 @@ void USBD_IRQHandler(void)
|
||||
NRF_USBD->WINDEXL , NRF_USBD->WINDEXH , NRF_USBD->WLENGTHL, NRF_USBD->WLENGTHH
|
||||
};
|
||||
|
||||
event.event_id = DCD_EVENT_SETUP_RECEIVED;
|
||||
dcd_event_t event = { .rhport = 0, .event_id = DCD_EVENT_SETUP_RECEIVED };
|
||||
memcpy(&event.setup_received, setup, 8);
|
||||
|
||||
dcd_event_handler(&event, true);
|
||||
@@ -461,7 +459,7 @@ void USBD_IRQHandler(void)
|
||||
}else
|
||||
{
|
||||
// Control IN complete
|
||||
dcd_control_complete(0, _dcd.control.actual_len);
|
||||
dcd_event_xfer_complete(0, 0, _dcd.control.actual_len, DCD_XFER_SUCCESS, true);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -475,7 +473,7 @@ void USBD_IRQHandler(void)
|
||||
}else
|
||||
{
|
||||
// Control OUT complete
|
||||
dcd_control_complete(0, _dcd.control.actual_len);
|
||||
dcd_event_xfer_complete(0, 0, _dcd.control.actual_len, DCD_XFER_SUCCESS, true);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -506,7 +504,7 @@ void USBD_IRQHandler(void)
|
||||
xfer->total_len = xfer->actual_len;
|
||||
|
||||
// BULK/INT OUT complete
|
||||
dcd_xfer_complete(0, epnum, xfer->actual_len, true);
|
||||
dcd_event_xfer_complete(0, epnum, xfer->actual_len, DCD_XFER_SUCCESS, true);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -535,7 +533,7 @@ void USBD_IRQHandler(void)
|
||||
} else
|
||||
{
|
||||
// Bulk/Int IN complete
|
||||
dcd_xfer_complete(0, epnum | TUSB_DIR_IN_MASK, xfer->actual_len, true);
|
||||
dcd_event_xfer_complete(0, epnum | TUSB_DIR_IN_MASK, xfer->actual_len, DCD_XFER_SUCCESS, true);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -563,7 +561,7 @@ void USBD_IRQHandler(void)
|
||||
// SOF interrupt
|
||||
if ( int_status & USBD_INTEN_SOF_Msk )
|
||||
{
|
||||
event.event_id = DCD_EVENT_SOF;
|
||||
dcd_event_t event = { .rhport = 0, .event_id = DCD_EVENT_SOF };
|
||||
dcd_event_handler(&event, true);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -398,10 +398,11 @@ void xfer_complete_isr(uint8_t rhport, uint32_t reg_complete)
|
||||
|
||||
if (p_qtd->int_on_complete)
|
||||
{
|
||||
bool succeeded = ( p_qtd->xact_err || p_qtd->halted || p_qtd->buffer_err ) ? false : true;
|
||||
uint8_t result = p_qtd->halted ? DCD_XFER_STALLED :
|
||||
( p_qtd->xact_err ||p_qtd->buffer_err ) ? DCD_XFER_FAILED : DCD_XFER_SUCCESS;
|
||||
|
||||
uint8_t ep_addr = edpt_phy2addr(ep_idx);
|
||||
dcd_xfer_complete(rhport, ep_addr, p_qtd->expected_bytes - p_qtd->total_bytes, succeeded); // only number of bytes in the IOC qtd
|
||||
dcd_event_xfer_complete(rhport, ep_addr, p_qtd->expected_bytes - p_qtd->total_bytes, result, true); // only number of bytes in the IOC qtd
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -418,13 +419,12 @@ void hal_dcd_isr(uint8_t rhport)
|
||||
|
||||
if (int_status == 0) return;// disabled interrupt sources
|
||||
|
||||
dcd_event_t event = { .rhport = rhport };
|
||||
|
||||
if (int_status & INT_MASK_RESET)
|
||||
{
|
||||
bus_reset(rhport);
|
||||
|
||||
event.event_id = DCD_EVENT_BUS_RESET;
|
||||
dcd_event_t event = { .rhport = rhport, .event_id = DCD_EVENT_BUS_RESET };
|
||||
dcd_event_handler(&event, true);
|
||||
}
|
||||
|
||||
@@ -434,7 +434,7 @@ void hal_dcd_isr(uint8_t rhport)
|
||||
{ // Note: Host may delay more than 3 ms before and/or after bus reset before doing enumeration.
|
||||
if ((lpc_usb->DEVICEADDR >> 25) & 0x0f)
|
||||
{
|
||||
event.event_id = DCD_EVENT_SUSPENDED;
|
||||
dcd_event_t event = { .rhport = rhport, .event_id = DCD_EVENT_SUSPENDED };
|
||||
dcd_event_handler(&event, true);
|
||||
}
|
||||
}
|
||||
@@ -445,7 +445,7 @@ void hal_dcd_isr(uint8_t rhport)
|
||||
// {
|
||||
// if ( !(lpc_usb->PORTSC1_D & PORTSC_CURRENT_CONNECT_STATUS_MASK) )
|
||||
// {
|
||||
// event.event_id = DCD_EVENT_UNPLUGGED;
|
||||
// dcd_event_t event = { .rhport = rhport, .event_id = DCD_EVENT_UNPLUGGED };
|
||||
// dcd_event_handler(&event, true);
|
||||
// }
|
||||
// }
|
||||
@@ -463,7 +463,7 @@ void hal_dcd_isr(uint8_t rhport)
|
||||
// 23.10.10.2 Operational model for setup transfers
|
||||
lpc_usb->ENDPTSETUPSTAT = lpc_usb->ENDPTSETUPSTAT;// acknowledge
|
||||
|
||||
event.event_id = DCD_EVENT_SETUP_RECEIVED;
|
||||
dcd_event_t event = { .rhport = rhport, .event_id = DCD_EVENT_SETUP_RECEIVED };
|
||||
event.setup_received = p_dcd->qhd[0].setup_request;
|
||||
|
||||
dcd_event_handler(&event, true);
|
||||
@@ -480,10 +480,10 @@ void hal_dcd_isr(uint8_t rhport)
|
||||
|
||||
if ( p_qtd->int_on_complete )
|
||||
{
|
||||
bool succeeded = ( p_qtd->xact_err || p_qtd->halted || p_qtd->buffer_err ) ? false : true;
|
||||
(void) succeeded;
|
||||
uint8_t result = p_qtd->halted ? DCD_XFER_STALLED :
|
||||
( p_qtd->xact_err ||p_qtd->buffer_err ) ? DCD_XFER_FAILED : DCD_XFER_SUCCESS;
|
||||
|
||||
dcd_control_complete(rhport, p_qtd->expected_bytes - p_qtd->total_bytes);
|
||||
dcd_event_xfer_complete(rhport, 0, p_qtd->expected_bytes - p_qtd->total_bytes, result, true);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -496,7 +496,7 @@ void hal_dcd_isr(uint8_t rhport)
|
||||
|
||||
if (int_status & INT_MASK_SOF)
|
||||
{
|
||||
event.event_id = DCD_EVENT_SOF;
|
||||
dcd_event_t event = { .rhport = rhport, .event_id = DCD_EVENT_SOF };
|
||||
dcd_event_handler(&event, true);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user