mirror of
https://github.com/hathach/tinyusb.git
synced 2025-01-31 05:52:55 +08:00
Fix receiving of short packet data (ep out)
This commit is contained in:
parent
05996aee64
commit
9e35ef73f7
@ -576,6 +576,12 @@ static void handle_rxflvl_ints(USB_OTG_OUTEndpointTypeDef * out_ep) {
|
|||||||
|
|
||||||
// Increment pointer to xfer data
|
// Increment pointer to xfer data
|
||||||
xfer->buffer += bcnt;
|
xfer->buffer += bcnt;
|
||||||
|
|
||||||
|
// Truncate transfer length in case of short packet
|
||||||
|
if(bcnt < xfer->max_size){
|
||||||
|
xfer->total_len -= (out_ep[epnum].DOEPTSIZ & USB_OTG_DOEPTSIZ_XFRSIZ_Msk) >> USB_OTG_DOEPTSIZ_XFRSIZ_Pos;
|
||||||
|
if(epnum == 0) xfer->total_len -= ep0_pending[TUSB_DIR_OUT];
|
||||||
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 0x03: // Out packet done (Interrupt)
|
case 0x03: // Out packet done (Interrupt)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user