Fixed race conditions in the CDC, HID and Mass Storage class drivers when processing some control requests.

This commit is contained in:
Dean Camera 2011-11-09 12:29:14 +00:00
parent 2b54cd984d
commit 8df0cf3241
5 changed files with 17 additions and 1 deletions

View file

@ -61,6 +61,7 @@ void MS_Device_ProcessControlRequest(USB_ClassInfo_MS_Device_t* const MSInterfac
if (USB_ControlRequest.bmRequestType == (REQDIR_DEVICETOHOST | REQTYPE_CLASS | REQREC_INTERFACE))
{
Endpoint_ClearSETUP();
while (!(Endpoint_IsINReady()));
Endpoint_Write_8(MSInterfaceInfo->Config.TotalLUNs - 1);
Endpoint_ClearIN();
Endpoint_ClearStatusStage();