File tree Expand file tree Collapse file tree 1 file changed +4
-2
lines changed Expand file tree Collapse file tree 1 file changed +4
-2
lines changed Original file line number Diff line number Diff line change 49
49
#endif
50
50
#define MAX_PACKET_SIZE_EP0 64
51
51
52
+ #define USB_MIN (a, b ) ((a) > (b) ? (b) : (a))
53
+
52
54
53
55
bool USBDevice::_request_get_descriptor ()
54
56
{
@@ -224,7 +226,7 @@ bool USBDevice::_control_out()
224
226
complete_request_xfer_done (true );
225
227
}
226
228
} else {
227
- _phy->ep0_read (_transfer.ptr , _transfer.remaining );
229
+ _phy->ep0_read (_transfer.ptr , USB_MIN ( _transfer.remaining , _max_packet_size_ep0) );
228
230
}
229
231
230
232
return true ;
@@ -800,7 +802,7 @@ void USBDevice::_control_setup_continue()
800
802
} else {
801
803
/* OUT stage */
802
804
_transfer.stage = DataOut;
803
- _phy->ep0_read (_transfer.ptr , _transfer.remaining );
805
+ _phy->ep0_read (_transfer.ptr , USB_MIN ( _transfer.remaining , _max_packet_size_ep0) );
804
806
}
805
807
} else {
806
808
/* Status stage */
You can’t perform that action at this time.
0 commit comments