Changed all Device mode LowLevel demos and Device Class drivers so that the control request is acknowledged and any data transferred as quickly as possible without any processing inbetween sections, so that long callbacks or event handlers will not break communications with the host by exceeding the maximum control request stage timeout period.

This commit is contained in:
Dean Camera 2010-08-22 03:26:20 +00:00
parent 1be3436e89
commit 4cc7f5200b
18 changed files with 82 additions and 167 deletions

View file

@ -133,12 +133,11 @@ void EVENT_USB_Device_UnhandledControlRequest(void)
/* Set Interface is not handled by the library, as its function is application-specific */
if (USB_ControlRequest.bmRequestType == (REQDIR_HOSTTODEVICE | REQTYPE_STANDARD | REQREC_INTERFACE))
{
Endpoint_ClearSETUP();
Endpoint_ClearSETUP();
Endpoint_ClearStatusStage();
/* Check if the host is enabling the audio interface (setting AlternateSetting to 1) */
StreamingAudioInterfaceSelected = ((USB_ControlRequest.wValue) != 0);
Endpoint_ClearStatusStage();
}
break;