diff --git a/LUFA/Drivers/USB/Class/Device/MassStorage.c b/LUFA/Drivers/USB/Class/Device/MassStorage.c index 18f7b8e528..4d7cff6bf7 100644 --- a/LUFA/Drivers/USB/Class/Device/MassStorage.c +++ b/LUFA/Drivers/USB/Class/Device/MassStorage.c @@ -166,10 +166,6 @@ static bool MS_Device_ReadInCommandBlock(USB_ClassInfo_MS_Device_t* const MSInte (sizeof(MS_CommandBlockWrapper_t) - 16), &BytesProcessed) == ENDPOINT_RWSTREAM_IncompleteTransfer) { - #if !defined(INTERRUPT_CONTROL_ENDPOINT) - USB_USBTask(); - #endif - if (MSInterfaceInfo->State.IsMassStoreReset) return false; } @@ -192,10 +188,6 @@ static bool MS_Device_ReadInCommandBlock(USB_ClassInfo_MS_Device_t* const MSInte MSInterfaceInfo->State.CommandBlock.SCSICommandLength, &BytesProcessed) == ENDPOINT_RWSTREAM_IncompleteTransfer) { - #if !defined(INTERRUPT_CONTROL_ENDPOINT) - USB_USBTask(); - #endif - if (MSInterfaceInfo->State.IsMassStoreReset) return false; } @@ -236,10 +228,6 @@ static void MS_Device_ReturnCommandStatus(USB_ClassInfo_MS_Device_t* const MSInt sizeof(MS_CommandStatusWrapper_t), &BytesProcessed) == ENDPOINT_RWSTREAM_IncompleteTransfer) { - #if !defined(INTERRUPT_CONTROL_ENDPOINT) - USB_USBTask(); - #endif - if (MSInterfaceInfo->State.IsMassStoreReset) return; } diff --git a/LUFA/Drivers/USB/HighLevel/PipeStream.c b/LUFA/Drivers/USB/HighLevel/PipeStream.c index 9f88981777..4465471a81 100644 --- a/LUFA/Drivers/USB/HighLevel/PipeStream.c +++ b/LUFA/Drivers/USB/HighLevel/PipeStream.c @@ -101,6 +101,8 @@ uint8_t Pipe_Null_Stream(uint16_t Length, *BytesProcessed += BytesInTransfer; return PIPE_RWSTREAM_IncompleteTransfer; } + + USB_USBTask(); if ((ErrorCode = Pipe_WaitUntilReady())) return ErrorCode; diff --git a/LUFA/Drivers/USB/HighLevel/Template/Template_Endpoint_RW.c b/LUFA/Drivers/USB/HighLevel/Template/Template_Endpoint_RW.c index 8a68d65e26..4077279cd1 100644 --- a/LUFA/Drivers/USB/HighLevel/Template/Template_Endpoint_RW.c +++ b/LUFA/Drivers/USB/HighLevel/Template/Template_Endpoint_RW.c @@ -27,6 +27,10 @@ uint8_t TEMPLATE_FUNC_NAME (TEMPLATE_BUFFER_TYPE Buffer, return ENDPOINT_RWSTREAM_IncompleteTransfer; } + #if !defined(INTERRUPT_CONTROL_ENDPOINT) + USB_USBTask(); + #endif + if ((ErrorCode = Endpoint_WaitUntilReady())) return ErrorCode; } diff --git a/LUFA/Drivers/USB/LowLevel/Endpoint.c b/LUFA/Drivers/USB/LowLevel/Endpoint.c index df1e86aa7a..33f5ec9247 100644 --- a/LUFA/Drivers/USB/LowLevel/Endpoint.c +++ b/LUFA/Drivers/USB/LowLevel/Endpoint.c @@ -155,10 +155,6 @@ uint8_t Endpoint_WaitUntilReady(void) if (Endpoint_IsOUTReceived()) return ENDPOINT_READYWAIT_NoError; } - - #if !defined(INTERRUPT_CONTROL_ENDPOINT) - USB_USBTask(); - #endif uint8_t USB_DeviceState_LCL = USB_DeviceState; diff --git a/LUFA/Drivers/USB/LowLevel/Pipe.c b/LUFA/Drivers/USB/LowLevel/Pipe.c index e8ee23ffdc..82a9c1a49b 100644 --- a/LUFA/Drivers/USB/LowLevel/Pipe.c +++ b/LUFA/Drivers/USB/LowLevel/Pipe.c @@ -172,10 +172,6 @@ uint8_t Pipe_WaitUntilReady(void) return PIPE_READYWAIT_NoError; } - #if !defined(INTERRUPT_CONTROL_ENDPOINT) - USB_USBTask(); - #endif - if (Pipe_IsStalled()) return PIPE_READYWAIT_PipeStalled; else if (USB_HostState == HOST_STATE_Unattached)